今天继续学习R,不得不说周末或许是一周中最忙的时候,难得的约约约都无可安置得集中在众所周知的空闲里,昨天偷懒看到选修就跳过了,Day 6 好好做下笔记,不辜负豆花辛苦的教程。
1. 获取 R cheatsheet 的方法
- 百度/谷歌 XX小抄
- Rstudio 的 cheatsheet 网站
https://www.rstudio.com/resources/cheatsheets/ - 生信星球 微信公众号
2. 了解数据框
通过这段命令学习一下数据框的构建以及相关函数
a<-data.frame(GeneId=rep("gene5",times=3),SampleName=paste("sample",1:3,sep=""),Expression=c(14,19,18))
-
data.frame(colname1,colname2,colname3,...)
-- 通过“=“给3个列名赋值GeneId,SampleName,Expression(如果列名是数字要加引号,eg:"1999")
-- 构建了一个包含三个向量的数据框 -
rep(“x”,y)
-- x-要重复的字符;
-- y-重复次数 -
paste("x",y,sep="")
连结两个字符串
-- x-字符
-- y-字符(这里 用了数字)
-- sep-指定分隔符
3. 了解 tidyr
3.1 主要功能
- 数据框的变形
- 处理数据框中的空值
- 根据一个表格衍生出其他表格
- 实现行或列的分割和合并
4. 下载和安装 tydir
- 查看是否已经安装:
library(tidyr)
- 下载和安装:控制台中输入:
install.packages("tidyr")
- 使用时需要在console中通过命令
library(tidyr)
载入
我的电脑在安装软件时很给力啊,不仅没有报错,速度也很快~
5.了解Tidy Data
定义:是一种组织表格数据的方式,提供了一种能够跨包使用的“统一”的数据格式(实质上变成非常整齐的三列:variable-case-observation)。
6. tydir 的应用
6.1 Reshape Data
引自 生信星球定义一个数据框a,然后通过gather将它统一格式:
a<-data.frame(country=c("a","b","c"),"1999"=paste(c(0.7,37,212),"k"),"2000"=paste(c(2,80,213),"k"))
gather(a,X1999,X2000,key="year",value="cases")
gather(a,"year","cases",X1999,X2000)#花花教的优秀偷懒做法
gather(a,year,cases,-country)#花花教的高效做法(整合除country以外的列)
key键-统一格式的第二列
value值-统一格式的数值列(别忘记 给他一个列名哦)
6.2 Handle Missing Values
引自 生信星球-
read.csv()
#花花总结的 小妙招(将已有数据赋值给x导入到Rstudio处理)
在R和Excel中通用,默认参数很好用,不像read.table()乱码频出
导入:x<-read.csv("a.txt")
导出:x<-read.csv(X,"a.txt")
- 有些应付的三个函数
--drop_na()
--fill()
--replace_na()
6.3 Expand Tables
引自 生信星球- complete(data,...,fill=list(colname="#要补充的内容(“字符串”or 数字)"))
- expand(data,...):列出每列值所有可能的组合
6.4 Split Cells
引自 生信星球引自 生信星球
-
separate
:按列分割 -
separate_rows
:按行分割 -
unite
:分割完了再合并回去
网友评论