新手 tips
- 賦值 -> x
- 括號必須帶,且必須是半角
- 向量是由元素組成的把夸,元素可以是數(shù)字或者字符串
- 表格就是 R語言里的數(shù)據(jù)框
- 幫助文檔
?read.table
- 數(shù)據(jù)類型:
** 向量(vector) **
** 數(shù)據(jù)框 (Data frame) **
矩陣(Matrix)
數(shù)組 (Array)
list
Part 1 向量
1. 標量和向量的區(qū)分
- 元素: 數(shù)字或字符串
- 標量: 一個元素組成的變量
- 向量:多個元素組成的變量
- 一個向量是一排有序排列的元素恋日,有時回把一個向量作為數(shù)據(jù)框的一列
-
賦值:給一個變量一個數(shù)值或者字符串、數(shù)據(jù)框等
- 賦值會被覆蓋
點右上角environment 可以看到被賦值了的變量
2.從向量中提取元素
提取方法
(1) 根據(jù)元素位置
x[4] #x第4個元素
x[-4] #排除法誓竿,除了第4個元素之外剩余的元素
x[2:4] #第2到4個元素
x[-(2:4)] #除了第2-4個元素
x[c(1,5)] #第1個和第5個元素
--來自生信星球--
(2)根據(jù)值
x[x==10]#等于10的元素
x[x<0]
x[x %in% c(1,2,5)]#存在于向量c(1筷屡,2傻盟,5)中的元素
--來自生信星球--
Part 2 數(shù)據(jù)框
- 從生信星球公眾號后臺下載數(shù)據(jù)嫂丙,通過 xftp 傳到 R 服務(wù)器。
- 通過網(wǎng)頁端打開 Rstudio跟啤,
setwd(dir = “R/example_data”)
隅肥,更改工作目錄到數(shù)據(jù)儲存的位置 -
X<-read.csv(’doudou.txt ‘)
讀取此數(shù)據(jù)框,賦值給 X
1泛啸、讀取本地數(shù)據(jù)
read.table(file = “huahua.txt”, sep = “\t”, header = T)
a<-read.table(file = “huahua.txt”, sep = “\t”, header = T )
- read.table #讀取表格
- sep #以什么為分割(這里\t 代表制表符)
- header #是否有表頭
2候址、設(shè)置行名和列名
X<-read.csv(’doudou.txt ‘) #在示例數(shù)據(jù)里有doudou.txt 注意這里的變量X是一個數(shù)據(jù)框
colnames(X) #查看列名
rownames(X) #查看行名,默認值的行名就是行號种柑,1.2.3.4...
colnames(X) [1]<-“bioplanet” #有的公司返回數(shù)據(jù),左上角第一格為空荠雕,R會自動補為x,用這個命令來修改
X<-read.csv(file = “huahua.txt”,sep = ” “,header =T,row.names=1) #最后row.names的意思是修改第一列為行名
--來自生信星球--
3炸卑、數(shù)據(jù)框的導出
write.table(X,file = “yu.txt”sep = “,”,quote=F) #分隔符改為逗號煤傍,字符串不加雙引號(默認格式帶由雙引號)
- quote #是否有引號
--來自生信星球--
4、變量的保存與重新加載
#這次沒有處理完的數(shù)據(jù)下次想接著用怎么辦?--學會保存和重新加載椅寺。保存的格式是RData。
save.image(file=”bioinfoplanet.RData“) #保存當前所有變量
save(X,file=”test.RData“) #保存其中一個變量
load(”test.RData“) #再次使用RData時的加載命令
--來自生信星球--
5桐玻、提取元素
#這里的X是的剛才的變量名镊靴,實際應(yīng)用要懂得替換链韭。
- X[x,y]#第x行第y列
- X[x,]#第x行
- X[,y]#第y列
- X[y] #也是第y列
- X[a:b]#第a列到第b列
- X[c(a,b)]#第a列和第b列
- X$列名#也可以提取列(優(yōu)秀寫法敞峭,而且這個命令還優(yōu)秀到不用寫括號的地步旋讹,并且支持Tab自動補全哦,不過只能提取一列)
--來自生信星球--
6沉迹、直接使用數(shù)據(jù)框中的變量
做散點圖
options(stringsAsFactors = T)
a <-data.frame(case=paste0(“S”,1:9),values=runif(9))
plot(a$case,a$values)
--來自生信星球--
- stringsAsFactors #將字符串作為元素
- case鞭呕,values #給列的命名(自己想的)
- a$case (變量a中[a是一個數(shù)據(jù)框]的case這一列)
- a$values (同上)
其他實現(xiàn)方法
一、attach
原理:把數(shù)據(jù)框名添加到搜索環(huán)境中瓦糕,這樣直接輸入列名刻坊,就可以少輸入變量名和$符號
attach(a)
plot(case,values)
二党晋、with
原理: with,如其名灾而。
with(a,{
plot(case,values)
x<<-summary(values) #求和并賦值給x,<<的意思是作為全局變量旁趟,也就是出了大括號仍有效锡搜。
})
x #運行完后打印x
--來自生信星球--
作業(yè)
save(X,file=”test.RData“)
如果報錯:
object X not found
原因:
環(huán)境中應(yīng)該是沒有 X 這一變量 的,檢查右上角 environment 進行確認凡傅。
需要重新引用或者給 X 重新賦值夏跷。