我有两个独立的数据集:一个包含列标题,另一个包含数据。
第一个看起来像这样:
其中,我希望将第二列作为下一个数据集的列标题:
我该怎么做呢?谢谢。
发布于 2018-06-05 04:23:52
通常,您可以使用colnames
,它是数据框架或矩阵的列名的列表。您可以重命名您的数据帧,然后使用:
colnames(df) <- *listofnames*
也可以通过使用[]括号来重命名一个名称。这将重命名第一列:
colnames(df2)[1] <- "name"
对于您的示例,我们将采用列的值。试试这个:
colnames(df2) <- as.character(df1[,2])
注意列的长度和标题的长度是相同的。
与行等效的是rownames()
发布于 2018-08-17 02:00:47
使用可重现代码的dplyr方式:
library(dplyr)
df <- tibble(x = 1:5, y = 11:15)
df_n <- tibble(x = 1:2, y = c("col1", "col2"))
names(df) <- df_n %>% select(y) %>% pull()
我认为select() %>% pull()
语法比列表索引更容易记忆。此外,我在colnames
函数上使用了names
。在处理数据帧时,colnames
只调用names
函数,因此最好省去中间人,更明确地说明我们使用的是数据帧而不是矩阵。打字时也要短一些。
发布于 2020-04-24 04:39:15
您可以简单地执行以下操作:
names(data)[3]<- 'Newlabel'
其中,names(data)[3]
是要重命名的列。
https://stackoverflow.com/questions/50687741
复制相似问题