使用向量更改多个列名

汤姆

我试图根据向量更改列名,如下所示:

library(data.table)
df <- fread(
"radio1 radio2 radio3 radio4 radio5 radio6 radio7
8   12  18  32  40  36  32
6   12  18  24  30  36  30
8   16  18  24  30  36  18
4   12  12  24  30  36  24
6   16  24  32  40  48  24
8   12  18  24  30  36  30
8   12  18  24  30  36  18
8   16  24  32  40  48  40
8   16  24  24  30  48  48",
  header = TRUE
)

var <- c("radio1","radio2","radio3","radio4","radio5", "radio6", "radio7")
recode <- c("A","B","C","D","E", "F", "G")
variables <- cbind(var, recode)
variables <- as.data.table(variables)

for (i in seq_len(ncol(df))) { 
colnames(df[[i]]) <-  variables$recode[match(names(df)[i], variables $var)]
}

但是我收到错误:

Error in `colnames<-`(`*tmp*`, value = variables$recode[match(names(df)[i],  : 
  attempt to set 'colnames' on an object with less than two dimensions

我究竟做错了什么?有一个更好的方法吗?

罗纳克·沙阿

可以match直接使用

names(df) <- variables$recode[match(names(df), variables$var)]
df
#   A  B  C  D  E  F  G
#1: 8 12 18 32 40 36 32
#2: 6 12 18 24 30 36 30
#3: 8 16 18 24 30 36 18
#4: 4 12 12 24 30 36 24
#5: 6 16 24 32 40 48 24
#6: 8 12 18 24 30 36 30
#7: 8 12 18 24 30 36 18
#8: 8 16 24 32 40 48 40
#9: 8 16 24 24 30 48 48

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

tidyverse与粘贴的外部向量一起使用,该向量包含要更改的列名称

来自分类Dev

使用特定原理图更改多个列名称

来自分类Dev

使用索引更改列名

来自分类Dev

使用列名称向量减少列表

来自分类Dev

循环更改多个数据框的列名

来自分类Dev

在SQL视图中更改多个列名称

来自分类Dev

如何一次更改多个列名?

来自分类Dev

使用向量的向量的多个数组

来自分类Dev

更改多个列名称,粘贴在列名称的开头/结尾

来自分类Dev

有什么方法可以使用tidyverse R通过升序更改多个列名称?

来自分类Dev

如何使用R中的映射文件更改多个数据框中的列名?

来自分类Dev

使用粘贴折叠多个向量

来自分类Dev

更改多个列名,但不能全部更改-Pandas Python

来自分类Dev

使用索引号同时更改pandas数据框中的多个列名称(并非所有colmn名称)

来自分类Dev

使用summary和for循环从字符向量中获取列名

来自分类Dev

在j中同时使用列名和硬编码列的向量

来自分类Dev

使用summary和for循环从字符向量中获取列名

来自分类Dev

在 dplyr 的 for 循环中使用向量中的列名

来自分类Dev

如何使用多个列名进行分组?

来自分类Dev

ASPxComboBox 无法使用新的 ListBoxColumn() 更改列名

来自分类Dev

通过Pandas中的列号更改多个列名?

来自分类Dev

从多个表中选择计数时,列名不会更改

来自分类Dev

如何在Julia(0.3版)DataFrame中更改多个列名?

来自分类Dev

在python中合并多个表后更改重复的列名

来自分类Dev

更改具有相同列名的多个表的列类型

来自分类Dev

从多个表中选择计数时,列名不会更改

来自分类Dev

使用CUBLAS进行多个矩阵向量调用

来自分类Dev

使用grepl从向量中排除多个单词

来自分类Dev

使用get获得包含多个向量的列表

Related 相关文章

  1. 1

    tidyverse与粘贴的外部向量一起使用,该向量包含要更改的列名称

  2. 2

    使用特定原理图更改多个列名称

  3. 3

    使用索引更改列名

  4. 4

    使用列名称向量减少列表

  5. 5

    循环更改多个数据框的列名

  6. 6

    在SQL视图中更改多个列名称

  7. 7

    如何一次更改多个列名?

  8. 8

    使用向量的向量的多个数组

  9. 9

    更改多个列名称,粘贴在列名称的开头/结尾

  10. 10

    有什么方法可以使用tidyverse R通过升序更改多个列名称?

  11. 11

    如何使用R中的映射文件更改多个数据框中的列名?

  12. 12

    使用粘贴折叠多个向量

  13. 13

    更改多个列名,但不能全部更改-Pandas Python

  14. 14

    使用索引号同时更改pandas数据框中的多个列名称(并非所有colmn名称)

  15. 15

    使用summary和for循环从字符向量中获取列名

  16. 16

    在j中同时使用列名和硬编码列的向量

  17. 17

    使用summary和for循环从字符向量中获取列名

  18. 18

    在 dplyr 的 for 循环中使用向量中的列名

  19. 19

    如何使用多个列名进行分组?

  20. 20

    ASPxComboBox 无法使用新的 ListBoxColumn() 更改列名

  21. 21

    通过Pandas中的列号更改多个列名?

  22. 22

    从多个表中选择计数时,列名不会更改

  23. 23

    如何在Julia(0.3版)DataFrame中更改多个列名?

  24. 24

    在python中合并多个表后更改重复的列名

  25. 25

    更改具有相同列名的多个表的列类型

  26. 26

    从多个表中选择计数时,列名不会更改

  27. 27

    使用CUBLAS进行多个矩阵向量调用

  28. 28

    使用grepl从向量中排除多个单词

  29. 29

    使用get获得包含多个向量的列表

热门标签

归档