我需要轉(zhuǎn)置一個大數(shù)據(jù)框,因此我使用了:df.aree <- t(df.aree)df.aree <- as.data.frame(df.aree)這是我得到的:df.aree[c(1:5),c(1:5)] 10428 10760 12148 11865 name M231T3 M961T5 M960T6 M231T19 GS04.A 5.847557e+03 0.000000e+00 3.165891e+04 2.119232e+04 GS16.A 5.248690e+04 4.047780e+03 3.763850e+04 1.187454e+04 GS20.A 5.370910e+03 9.518396e+03 3.552036e+04 1.497956e+04 GS40.A 3.640794e+03 1.084391e+04 4.651735e+04 4.120606e+04 我的問題是我需要消除新的列名(10428、10760、12148、11865),因為我需要使用第一行作為列名。我嘗試使用col.names()功能,但沒有得到所需的東西。你有什么建議嗎?編輯謝謝你的建議?。。∈褂盟?,我獲得:df.aree[c(1:5),c(1:5)] M231T3 M961T5 M960T6 M231T19 GS04.A 5.847557e+03 0.000000e+00 3.165891e+04 2.119232e+04 GS16.A 5.248690e+04 4.047780e+03 3.763850e+04 1.187454e+04 GS20.A 5.370910e+03 9.518396e+03 3.552036e+04 1.497956e+04 GS40.A 3.640794e+03 1.084391e+04 4.651735e+04 4.120606e+04 GS44.A 1.225938e+04 2.681887e+03 1.154924e+04 4.202394e+04現(xiàn)在,我需要轉(zhuǎn)換因子列中的行名(GS ..)。
3 回答

守著一只汪
TA貢獻1872條經(jīng)驗 獲得超4個贊
您最好不要在name。列位于其中的情況下轉(zhuǎn)置data.frame,然后所有數(shù)字值都將轉(zhuǎn)換為字符串!
這是將數(shù)字保留為數(shù)字的解決方案:
# first remember the names
n <- df.aree$name
# transpose all but the first column (name)
df.aree <- as.data.frame(t(df.aree[,-1]))
colnames(df.aree) <- n
df.aree$myfactor <- factor(row.names(df.aree))
str(df.aree) # Check the column types

達令說
TA貢獻1821條經(jīng)驗 獲得超6個贊
df.aree <- as.data.frame(t(df.aree))
colnames(df.aree) <- df.aree[1, ]
df.aree <- df.aree[-1, ]
df.aree$myfactor <- factor(row.names(df.aree))
- 3 回答
- 0 關(guān)注
- 595 瀏覽
添加回答
舉報
0/150
提交
取消