tidyr包的使用
它的功能主要有:
(1)數(shù)據(jù)框的變形
(2)處理數(shù)據(jù)框中的空值
(3)根據(jù)一個表格衍生出其他表格
(4)實現(xiàn)行或列的分割和合并
這個包是把你要用的數(shù)據(jù)處理成標(biāo)準(zhǔn)而統(tǒng)一的數(shù)據(jù)框,然后才能進(jìn)行進(jìn)一步的數(shù)據(jù)處理和作圖
1.安裝包的方法: install.packages("包名")
示例:
install.packages("tidyr")
為了能夠快速下載并安裝包,我們最好將包的獲取地址改為國內(nèi)的服務(wù)器,操作如下:

在使用的時候需要首先將包載入:
library(tidyr)
準(zhǔn)備工作
新建數(shù)據(jù)框:
a<-data.frame(GeneId = rep("gene5",times=3),SampleName =paste("Sample",1:3,sep=""),Expression=c(14,19,18))
結(jié)果顯示為:

GeneId =,SampleName= ,Expression= #表示列明
rep()函數(shù)
rep(x,times) #表示重復(fù)x多少次
例如:
> rep("a",3)
[1] "a" "a" "a" #顯示結(jié)果
paste()函數(shù),是將兩個變量連接起來的函數(shù)
#用法:
paste (..., sep = " ", collapse = NULL)
示例:
> paste("1st", "2nd", "3rd")
[1] "1st 2nd 3rd" #顯示結(jié)果
有兩個參數(shù):
sep:表示連接的兩個字符之間以什么連接起來
collapse:是表示將初步連接起來的結(jié)果,以什么連接
示例:
paste(c(1,1),c(2,2),sep="")
[1] "12" "12"
paste(c(1,1),c(2,2),sep=",")
[1] "1,2" "1,2"
> paste(c(1,1),c(2,2),sep=",",collapse = ":")
[1] "1,2:1,2"
#注意
當(dāng)連接的變量的只包含1個常量時,,collapse 是不起作用的
示例:
> paste("1st", "2nd", "3rd", collapse = ", ")
[1] "1st 2nd 3rd"
c()函數(shù)表示創(chuàng)建向量
注意: 字符串要加雙引號(行名和列名也是字符串,但是可以不用加),其他單元格(姑且這么叫了)里出現(xiàn)的字符串要加。
TidyData
這是一種組織表格數(shù)據(jù)的方式,提供了一種能夠跨包使用的“統(tǒng)一”的數(shù)據(jù)格式

1.Reshape Data
> a<-data.frame(country = c("A","B","C"),"1999" = paste(c(0.7,37,212),"K",sep = ''),"2000" = paste(c(2,80,213),"K",sep = ''))
> a
country X1999 X2000
1 A 0.7K 2K
2 B 37K 80K
3 C 212K 213K
> gather(a,X1999,X2000,key = "year",value = "cases")
#gather(表名,合并列1,合并列2,合并后的key列名,value列名)
country year cases
1 A X1999 0.7K
2 B X1999 37K
3 C X1999 212K
4 A X2000 2K
5 B X2000 80K
6 C X2000 213K
5 B X2000 80 K
6 C X2000 213 K
gather(a,"year","cases",X1999,X2000) #另一種寫法
2.Handle Missing Values