我有一組43個變量/列,默認命名爲X1,X2,X3 ..... X46,當我創建數據框時。我需要用Q將X重新分區。有沒有更快的方法來做到這一點,或者我必須單獨使用每個X的rename()?請幫助,我想學習完成此的有效方法! (我是新手R程序員)在R中快速命名同名的多列
1
A
回答
4
names(dataframe) <- gsub("X", "Q", names(dataframe), fixed = TRUE)
的fixed = TRUE
因爲你沒有實際使用正則表達式使得它更快。
2
假設cols
是列名的向量,你可以用gsub
來代替。
> cols
## [1] "X1" "X2" "X3" "X4" "X5" "X6" "X7" "X8" "X9" "X10" "X11" "X12" "X13" "X14"
##[15] "X15" "X16" "X17" "X18" "X19" "X20" "X21" "X22" "X23" "X24" "X25" "X26" "X27" "X28"
##[29] "X29" "X30" "X31" "X32" "X33" "X34" "X35" "X36" "X37" "X38" "X39" "X40" "X41" "X42"
##[43] "X43"
> gsub("X", "Q", cols)
## [1] "Q1" "Q2" "Q3" "Q4" "Q5" "Q6" "Q7" "Q8" "Q9" "Q10" "Q11" "Q12" "Q13" "Q14"
##[15] "Q15" "Q16" "Q17" "Q18" "Q19" "Q20" "Q21" "Q22" "Q23" "Q24" "Q25" "Q26" "Q27" "Q28"
##[29] "Q29" "Q30" "Q31" "Q32" "Q33" "Q34" "Q35" "Q36" "Q37" "Q38" "Q39" "Q40" "Q41" "Q42"
##[43] "Q43"
0
假設df
是您的數據幀,例如,
> df = data.frame(matrix(0,1,43))
您可以先清空當前列名稱,然後用任何需要的前綴命名它們,例如, "Q"
,使用:
> colnames(df)=NULL
> colnames(df)=colnames(df, do.NULL=FALSE, prefix="Q")
相關問題
- 1. 重命名很多R列
- 2. 在TFS(CodePlex)中快速/輕鬆地重命名文件名
- 3. 在R中命名的行和列爲
- 4. 在ggplot2中命名多個圖,r
- 5. 快速檢測Xml命名空間
- 6. 用Excel快速命名範圍用C#
- 7. 重命名的行和列中的R
- 8. 重命名列重塑中的R
- 9. R問題中的重命名列
- 10. 命名列表中的元素r
- 11. C#工具:如何快速重命名很多工具
- 12. 重命名中的R
- 13. 在JVM中多次命名同一組?
- 14. R中多列的每行的排名
- 15. 命名的列重命名
- 16. R編程:read.table中的錯誤:列名比列名多
- 17. 在Python中快速查找命名字典密鑰
- 18. 重命名R中的多個文件序列號
- 19. 重命名多個數據框中的列,R
- 20. 命名對象相同,但在不同的命名空間中
- 21. 如何命名r中的「行名稱」列
- 22. R XLConnect readWorksheet:重命名每個工作表中的列名
- 23. 組合多個相同名稱的列中的R
- 24. 在不同的命名空間中生成多個R文件(Eclipse中的Android)
- 25. R的命名列表元素
- 26. 重命名的因素,從列表(R)
- 27. 如何快速重命名文件夾中的一堆文件
- 28. 如何快速重命名Powershell中的數千個文件?
- 29. 按名稱重命名多列
- 30. 快速成員名單
哇,這實際上做到了!非常感謝!你能否添加一些關於gsub函數的信息以及regex如何使用?這可能對未來有所幫助:) –
您可以在R中鍵入'?gsub'。簡要說,'gsub(search_regex,replacement_regex,string_to_make_replacements_on)'。注意它是矢量化的,所以你可以做'gsub(「X」,「Q」,c(「MAX」,「SIX」))',並且它會變成c(「MAQ」,「SIQ」)。 '。 –
再一次,謝謝! –