从新数据框的列名称中删除“ X”字母

时间:2019-01-02 18:00:55

标签: r

我正在尝试按year分组,并对每个weight的{​​{1}}求和,但是在创建新数据框时,列名以令人讨厌的“ X”开头,例如“ { {1}}”,而不是year。当然,我可以在创建后将其删除或将其替换为“ X2000”,但我不希望一开始就创建它,因为该方法将应用于具有更多列的数据帧。

2000

2 个答案:

答案 0 :(得分:3)

虽然不是很明智,但您想要的是check.names = FALSE通话中的data.frame

data.frame(YG %>% group_by(year) %>%
             summarise(n = round(sum(weight)), g = n()) %>%
             select(-g) %>% spread(year, n, fill = 0), 
           check.names = FALSE)
#   2000 2001 2002
# 1    2    1    2

答案 1 :(得分:1)

另一种选择:new_YG是w

names(new_YG)<-sapply(str_remove_all(colnames(new_YG),"X"),"[")
names(new_YG)
new_YG