4 回答

TA貢獻(xiàn)1921條經(jīng)驗(yàn) 獲得超9個(gè)贊
您的數(shù)據(jù)框具有四列,如下所示df[,c(1,2,3,4)]。請(qǐng)注意,第一個(gè)逗號(hào)表示保留所有行,而1,2,3,4則指向列。
像上面的問題一樣更改順序 df2[,c(1,3,2,4)]
如果要將此文件輸出為csv,請(qǐng)執(zhí)行 write.csv(df2, file="somedf.csv")

TA貢獻(xiàn)1865條經(jīng)驗(yàn) 獲得超7個(gè)贊
# reorder by column name
data <- data[c("A", "B", "C")]
#reorder by column index
data <- data[c(1,3,2)]

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超8個(gè)贊
您還可以使用子集功能:
data <- subset(data, select=c(3,2,1))
您最好像在其他答案中一樣使用[]運(yùn)算符,但是了解您可以在單個(gè)命令中執(zhí)行子集和列重新排序操作可能會(huì)很有用。
更新:
您還可以使用dplyr軟件包中的select函數(shù):
data = data %>% select(Time, out, In, Files)
我不確定效率,但是由于dplyr的語(yǔ)法,這種解決方案應(yīng)該更加靈活,特別是在您有很多專欄的情況下。例如,以下內(nèi)容將以相反的順序重新排列mtcars數(shù)據(jù)集的列:
mtcars %>% select(carb:mpg)
并且以下內(nèi)容將僅對(duì)某些列重新排序,并丟棄其他列:
mtcars %>% select(mpg:disp, hp, wt, gear:qsec, starts_with('carb'))
- 4 回答
- 0 關(guān)注
- 830 瀏覽
添加回答
舉報(bào)