R包说明书(cheatsheet),俗称小抄,除了今天跟着生信星球了解R包,还可以通过小抄了解。
R包入门之tidyr
数据处理从此开始:tidyr在R包中较简单,从tidyr开始能更好地进行数据处理
- tidyr包主要功能:将数据处理成标准而统一的数据框
(1). 数据框的变形
(2). 处理数据框中的空值
(3). 根据一个表格衍生出其他表格
(4). 实现行或列的分割和合并
*TidyData:即标准而统一的数据框,个人认为应该是将数据框中的数据的行列更具体
当我们用R处理数据时,应该遵循Tidy data的原则:
每一列:代表一个变量(vairable)
每一行:代表一次观测(observation)
- 下载与安装R包
R包说明书下载:谷歌/百度
Rstudio的cheatsheet网站:https://www.rstudio.com/resources/cheatsheetsR包极简安装:
(1). 设置好工作目录(包会默认安装在工作目录里)
(2). 查询是否存在需要的包:library(tidyr)
(3). ()下载和安装tidyr:install.packages("tidyr")
,直到控制台出现>
(4). 安装成功后加载:library(tidyr)
- 新建数据框
新建数据框,并将数据框赋值给a
a=data.frame(GeneId=rep("tp53",times=3),Samplename=paste("sample",1:3,sep=""),Expression=c(14,19,18))
GeneId,Samplename,Expression分别代表不同列
rep("名称",times=?):重复函数,括号内为重复字符与次数
paste( ):拼接字符串函数:
- 一堆单独的字符串拼接到一起
- 两个或更多字符串对象根据元素对应关系拼接到一起
- 一个字符串连接在一起
sep:分隔符,字符串之间连接方式,sep=""代表没有分隔符
括号内字符串要加双引号,除了等号左边行列名
数字作为行列名要加引号
数据框简单操作之tidyr
- 转换数据形式
- gather:将数据处理成TidyData
-
spread:还原TidyData
引自生信星球.png
关于gather
新建原始数据框:
a=data.frame(Country = c("A","B","C"),"1999" = c("0.7K","37K","212K"),"2000" = c("2K","80K","213K"))
注意数字作为行列时需加引号
转换成TidyData:
gather(a,X1999,X2000,key="year",value="cases")
括号内为数据框名,需合并的列名,合并后的key列名,value列名
若需合并的列名较多,可用排除法进行合并:
gather(a,"year","cases",-country)
括号内的key列名,value列名可直接写出,-Country
表示合并除去Country的列
- 处理丢失的数据(如单元格有空值)
三种处理方式:
(1):删除整行
(2):根据环境蒙
(3):同一列空值填上同一个数
原始数据:
-
删除(数据缺失)整行
drop_na(数据框名,缺失列名)
删除整行.png -
根据上一行数据填充
fill(数据框名,缺失列名)
根据上一行数据填充 -
填入特定数值
replace(数据框名,list(缺失列名=填入值))
特定值替换
- expand tables
-
complete
把空值的位置补全
complete
nesting的括号内填不变的列名,fill里填需补全空值的列名
- splic cells
拆分
-
separate
分割成两列 -
separate_rows
:分割成两行 -
unite
分割完了再合并
Day6--R包入门.png