我有一個數據框包含這些變量名稱:"X_1","X_106","X_110","X_111","X_112"
以及其他以字母表中其他字母開頭的名稱。我有興趣將"_v1"
僅附加到以"X"
開頭的變量,如上所示。我如何在R中完成這項工作?將字母添加到變量名的末尾
0
A
回答
2
names(df2) <- ifelse(grepl("^X",names(df2)), paste0(names(df2),"_v1"), names(df2))
5
或者只是:
colnames(dat) <- sub("(^X.*)", "\\1_v1", colnames(dat))
例如:
dat <- data.frame(a=1, b=2, c=3,
X_1=4, X_106=5, X_110=6, X_111=7, X_112=8)
dplyr::glimpse(dat)
## Observations: 1
## Variables: 8
## $ a (dbl) 1
## $ b (dbl) 2
## $ c (dbl) 3
## $ X_1 (dbl) 4
## $ X_106 (dbl) 5
## $ X_110 (dbl) 6
## $ X_111 (dbl) 7
## $ X_112 (dbl) 8
colnames(dat) <- sub("(^X.*)", "\\1_v1", colnames(dat))
dplyr::glimpse(dat)
## Observations: 1
## Variables: 8
## $ a (dbl) 1
## $ b (dbl) 2
## $ c (dbl) 3
## $ X_1_v1 (dbl) 4
## $ X_106_v1 (dbl) 5
## $ X_110_v1 (dbl) 6
## $ X_111_v1 (dbl) 7
## $ X_112_v1 (dbl) 8
+0
你可以只做'str(dat)'而不是加載一個包並打字太多,只是說。很好的解決方案 –
+0
我真的更喜歡'str'上的'glimpse'輸出' – hrbrmstr
+0
'它們只有'num'和'(dbl)'有區別,還是我錯過了某些東西? –
1
我相信,因爲這將是簡單的:
library(stringr)
names(my_data) <- ifelse(str_detect(names(my_data), "^X_"), paste(names(my_data), "v1", sep = "_"), names(my_data))
的str_detect(names(my_data), "^X_")
是什麼樣子的名字是從X_開始。
相關問題
- 1. 將變量添加到perl中的文件名末尾
- 2. 將整數添加到變量名稱的末尾目標C
- 3. 添加到smarty變量的末尾
- 4. 如何將數字添加到int變量的末尾?
- 5. 如何將字母添加到字符數組的末尾?
- 6. 在URL末尾添加變量 - PHP
- 7. 將字母附加到變量名上
- 8. 將變量追加到$ _SESSION變量的末尾
- 9. Stringbuilder將%添加到URL的末尾
- 10. 將元素添加到NSMutableArray的末尾
- 11. 將值添加到URL的末尾 - HTML
- 12. 將.html添加到URL的末尾
- 13. 將列添加到文件的末尾
- 14. 將項添加到ListView的末尾
- 15. 將空白添加到textwrapping的末尾?
- 16. 將\ n添加到每行的末尾
- 17. 在文本區域中添加字母到末尾
- 18. 將每個單詞的第一個字母追加到末尾
- 19. 如何在字符串的末尾添加字母/短語?
- 20. 將項目添加到隊列末尾
- 21. GData將\添加到元素末尾
- 22. Git將'〜HEAD_0'添加到文件末尾
- 23. 將節點添加到鏈表末尾
- 24. javascript添加變量到鏈接的末尾
- 25. django integrityerror將_id添加到我的屬性名稱的末尾
- 26. 將簽名添加到電子郵件的末尾
- 27. 將變量的輸出附加到特定行的末尾
- 28. 將隨機數添加到一個向量的末尾
- 29. Bash,將文本追加到變量的末尾?
- 30. htaccess的增加.PHP至$ _GET變量的末尾添加斜線
或'g < - grepl(「^ X」,names(df2));名稱(df2)[g] < - paste0(名稱(df2)[g],「_ v1」)'放棄'ifelse()'呼叫 –
嘆息...再次用快速槍擊... – brittenb
@RichardScriven嘿,爲什麼不'library(data.table); setDT(list(names(dat)))[grep(「^ X」,V1),V1:= paste0(V1,「_ v1」)]'? – Frank