【发布时间】:2019-11-24 15:10:34
【问题描述】:
这是我正在做的在线课程的一部分,R 用于数据分析。
使用 group_by 和 summarise 函数在 diamonds 数据集上创建一个 tibble - 新的 tibble 确实存在并且看起来如您所料,我检查了。现在必须使用新 tibble 中的这些汇总值创建条形图,但它给了我各种与无法识别列相关的错误。 我将小标题转换为数据框,但仍然遇到同样的问题。
代码如下:
diamonds_by_color <- group_by(diamonds, color)
diamonds_mp_by_color <- summarise(diamonds_by_color, mean_price = mean(price))
diamonds_mp_by_color <- as.data.frame(diamonds_mp_by_color)
colorcounts <- count(diamonds_by_color$mean_price)
colorbarplot <- barplot(diamonds_by_color$mean_price, names.arg = diamonds_by_color$color,
main = "Average price for different colour diamonds")
我在运行函数计数时得到的错误是:
UseMethod("summarise_") 中的错误: 'summarise_' 没有适用的方法应用于“NULL”类的对象
另外:警告信息: 未知或未初始化的列:“mean_price”。
这可能是一些微不足道的事情,但我已经阅读了很多书并尝试了一些东西但无法弄清楚。任何帮助将不胜感激:)
【问题讨论】:
-
我认为你不需要第三行代码。 'count' 也需要一个 df 和一个列。计数(df,col)。最好不要分配
-
diamonds_by_color从来没有分配给它mean_price...它是从该帧计算出来的,然后分配给diamonds_mp_by_color。 -
第2行的输出是一个数据框,不需要在第3行做成数据框...
-
Isquare1,如果其中一个答案解决了您的问题,请accept it;这样做不仅为回答者提供了一些积分,而且还为有类似问题的读者提供了一些关闭。尽管您只能接受一个答案,但您可以选择对您认为有帮助的人进行投票。 (如果仍有问题,您可能需要编辑您的问题并提供更多详细信息。)