R語言學習

1 獲得學習小抄
tidyr包的小抄
2 tidyr包功能
(1)數(shù)據(jù)框的變形
(2)處理數(shù)據(jù)框中的空值
(3)根據(jù)一個表格衍生出其他表格
(4)實現(xiàn)行或列的分割和合并
用的數(shù)據(jù)處理成標準而統(tǒng)一的數(shù)據(jù)框(Tidy Data),才能進行進一步的數(shù)據(jù)處理和作圖
3 安裝tidyr包
3.1 下載和安裝tydir:
install.packages("tidyr")

3.2 加載tydir包:
library()

4 數(shù)據(jù)框
新建數(shù)據(jù)框(這里直接把新建的數(shù)據(jù)框賦值給了a)
a<data.frame(GeneId=rep("gene5",times=3),SampleName=paste("Sample",1:3,sep=""),Expression=c(14,19,18))
rep,重復,括號中填要重復的字符和重復次數(shù)。
paste,連接兩個字符串,括號要填兩個代連接字符并指定分隔符(sep),沒有分隔符就填sep=“”。

5 認識Tidy Data
是一種組織表格數(shù)據(jù)的方式,提供了一種能夠跨包使用的“統(tǒng)一”的數(shù)據(jù)格式。
5 .1 Reshape Data
準備數(shù)據(jù)

變形1
gather(a,X1999,X2000,key = "year",value = "cases")
gather括號里的分別是:
數(shù)據(jù)框名,需合并的列名(兩個),合并后的key列名,value列名。

gather(a,year,cases,-country) #-country的意思就是合并除country外剩下的列。
5.2 Handle Missing Values
處理丟失的數(shù)據(jù)。就是某些單元格有空值的情況。
三種處理方式:
(1).刪除整行
(2).根據(jù)上下文(瞎)蒙一個
(3).同一列的空值填上同一個數(shù)。
5.2.1 獲取數(shù)據(jù)框X
導入:X<-read.csv('doudou.csv')
導出:write.csv(X,'doudou.csv')
drop_na():有空值的,整行刪除掉
括號里填數(shù)據(jù)框名,依據(jù)的列名(有空值那一列的列名)

fill(),根據(jù)上一行的數(shù)值填充上

replace_na(),空值填進去特定的一個數(shù)值
括號里填數(shù)據(jù)框名,要填的列名=要填的值

5.3 Expand Tables
complete(把空值的位置補全)

expand列出每列值所有可能的組合
