兩列data frame轉(zhuǎn)換成帶行名的vector

從兩列的數(shù)據(jù)框轉(zhuǎn)變成第一列為行名的向量,
兩列數(shù)據(jù)讀入,如下:


dataframe

要轉(zhuǎn)變成如下向量:


vector

具體思路是先轉(zhuǎn)變成矩陣,設(shè)定行名,提取數(shù)據(jù),最后轉(zhuǎn)變成向量。
設(shè)定行名后,會多了一列,因此需要將V1那一列刪除。


image.png

操作如下:

geneList2 = read.table("01.geneList.txt")
g1 = as.matrix(geneList2)
rownames(g1)=g1[,1]
head(g1)
g2 = g1[,2]
is.vector(g2)
驗證是否向量

這樣就將一個兩列的數(shù)據(jù)框轉(zhuǎn)變成向量了。但這樣轉(zhuǎn)出來的向量并非數(shù)字向量,因為一列是字母,一列是數(shù)字,會默認(rèn)轉(zhuǎn)變成帶了雙引號的字符向量。
因此,如果需要數(shù)字向量,則可以如下操作:

geneList2 = read.table("01.geneList.txt")
g1 = as.matrix(geneList2)            
g2 = apply(g1,2,as.numeric)       ##轉(zhuǎn)變成數(shù)字矩陣,但第一列全部為NA
rownames(g2)= g1[,1]              ##刪除NA列
g3 = g2[,2]
head(g3)

結(jié)果如下:


數(shù)字型向量
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容