更改列标题[重复]
Posted
技术标签:
【中文标题】更改列标题[重复]【英文标题】:Change column title [duplicate] 【发布时间】:2019-07-29 05:29:29 【问题描述】:我有一些伦敦的基本房价数据。
我有数据的子集
Y2018 = subset(HP, Date == "2018" & PPDCategory.Type == "A")
然后我生成了交易价格的平均值、中位数、最大值和最小值。
Year2018 = as.data.frame(tapply(Y2018$Price, Y2018$Ward, na.rm=TRUE, median))
Year2018$mean = (tapply(Y2018$Price, Y2018$Ward, na.rm=TRUE, mean))
Year2018$max = (tapply(Y2018$Price, Y2018$Ward, na.rm=TRUE, max))
Year2018$min = (tapply(Y2018$Price, Y2018$Ward, na.rm=TRUE, min))
这显然现在将第一列显示为“tapply(Y2018$Price, Y2018$Ward, na.rm = TRUE, median)” - 使该列名称存储为“median”的正确方法是什么。
tapply(Y2018$Price, Y2018$Ward, na.rm = TRUE, median) mean max min
375000 338600.0 460000 133000
Cann Hall Ward 462000 451264.2 690000 205000
Cathall Ward 489000 482119.1 775000 175000
Chapel End Ward 460000 451798.3 773500 162500
【问题讨论】:
Year2018 = as.data.frame(median = tapply(Y2018$Price, Y2018$Ward, na.rm=TRUE, median))
对于上面的代码,它会产生错误:as.data.frame(median = tapply(Y2018$Price, Y2018$Ward, na.rm = TRUE, : argument "x" is missing, with no default
【参考方案1】:
对不起,我看错了,您的问题的答案在这里: Changing column names of a data frame
如果我理解您的问题,您可以按如下方式使用 tidyverse
Year2018 %>%
group_by(Ward) %>%
mutate(mean = mean(price)) %>%
mutate(max = max(price)) %>%
mutate(min = min(price)) %>%
ungroup() %>%
unique()
【讨论】:
谢谢,我会试试 tidyverse。我是 R 新手,学习了名为 Analytics Edge 的在线课程,我们还没有使用 Tidyverse以上是关于更改列标题[重复]的主要内容,如果未能解决你的问题,请参考以下文章