【问题标题】: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

标签: r


【解决方案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
猜你喜欢
  • 2022-01-24
  • 2016-02-11
  • 2019-03-29
  • 1970-01-01
  • 1970-01-01
  • 2020-05-12
  • 1970-01-01
  • 1970-01-01
  • 2017-08-06
相关资源
最近更新 更多