從解決問題荤傲,開始復(fù)習(xí)和學(xué)習(xí);
問題一
下載 https://www.ncbi.nlm.nih.gov/sra?term=SRP133642 里面的
RunInfo Table
文件讀入到R里面,了解這個數(shù)據(jù)框敛熬,多少列垛膝,每一列都是什么屬性的元素鳍侣。(參考B站生信小技巧獲取runinfo table) 這是一個單細(xì)胞轉(zhuǎn)錄組項(xiàng)目的數(shù)據(jù)裁着,共768個細(xì)胞,如果你找不到RunInfo Table
文件拱她,可以點(diǎn)擊下載二驰,然后讀入你的R里面也可以。
- 一開始就有報(bào)錯秉沼,先學(xué)習(xí)參數(shù)header桶雀,fill;添加了還是錯誤唬复;
ex1 <- read.table("exam1.txt",header = T,fill = TRUE)
Error in read.table("exam1.txt", header = T, fill = TRUE) :
列的數(shù)目比列的名字要多
- read.table()的選項(xiàng)
- header:邏輯型變量矗积,第一行是否包含變量名;header is set to TRUE if and only if the first row contains one fewer field than the number of columns.
- sep:分開數(shù)據(jù)值的分隔符敞咧,默認(rèn)是sep=“ ”棘捣,一個或多個空格、制表符休建、換行或回車乍恐、使用 sep=“,”來讀取用逗號來份分隔行內(nèi)數(shù)據(jù)的文件,使用 sep =“\t”來讀取使用制表符來分割行內(nèi)數(shù)據(jù)的文件
- row.names = 1
- fill:logical. 如果為TRUE测砂,則如果行的長度不相等茵烈,則會隱式添加空白字段。尾部空字段省略的行砌些;從一個電子表格中導(dǎo)出的文件通常會把拖尾的空字段呜投,為了讀取這樣的文件,必須設(shè)置參數(shù) fill = TRUE存璃。
- stringsAsFactors:邏輯值仑荐,標(biāo)記處字符向量是否需要轉(zhuǎn)化為因子,默認(rèn)是TRUE纵东。
- R數(shù)據(jù)導(dǎo)入讀取read.table函數(shù)詳解粘招,如何讀取不規(guī)則的數(shù)據(jù)
- R語言_read.table()函數(shù)用法
- 然而最后還是沒找到解決,看了答案篮迎;sep我以為是讀表讀取空格就好男图,但可能是完成?
a <- read.table("SraRunTable.txt", header = TRUE, sep = '\t')
str函數(shù)查看數(shù)據(jù)框內(nèi)容
str(a)
問題二
下載 https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE111229 里面的
樣本信息sample.csv
讀入到R里面甜橱,了解這個數(shù)據(jù)框逊笆,多少列,每一列都是什么屬性的元素岂傲。(參考 https://mp.weixin.qq.com/s/fbHMNXOdwiQX5BAlci8brA 獲取樣本信息sample.csv)如果你實(shí)在是找不到樣本信息文件sample.csv难裆,也可以點(diǎn)擊下載。把前面兩個步驟的兩個表(RunInfo Table
文件,樣本信息sample.csv)關(guān)聯(lián)起來乃戈,使用merge函數(shù)褂痰。
#把兩個表關(guān)聯(lián)起來,使用merge函數(shù)症虑。
c <- merge(a, b, by = "Sample_Name", all.x = TRUE)
優(yōu)秀作業(yè)答案: