亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

轉置數據幀

轉置數據幀

HUWWW 2019-11-26 15:35:01
我需要轉置一個大數據框,因此我使用了: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現在,我需要轉換因子列中的行名(GS ..)。
查看完整描述

3 回答

?
守著一只汪

TA貢獻1872條經驗 獲得超4個贊

您最好不要在name。列位于其中的情況下轉置data.frame,然后所有數字值都將轉換為字符串!


這是將數字保留為數字的解決方案:


# 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


查看完整回答
反對 回復 2019-11-26
?
達令說

TA貢獻1821條經驗 獲得超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))


查看完整回答
反對 回復 2019-11-26
  • 3 回答
  • 0 關注
  • 619 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號