【发布时间】:2012-05-02 23:48:12
【问题描述】:
我正在编写一些代码,我需要检查给定数据输入的所有组大小是否相等。例如,假设我想知道“mpg”数据集(在 ggplot2 包中)是否有:
- 每个制造商的汽车数量相同
- 每种驱动类型(4 轮、前轮、后轮)的汽车数量相同
- 每种发动机类型(4 缸、6 缸、8 缸)的汽车数量相同
对于像mpg这样的数据,其中一些问题可以通过检查摘要输出来回答
library(ggplot2) # contains the mpg dataset
summary(mpg$drive) # shows the breakdown of cars by drive-type,
# which we can verify is unequal
但我觉得我缺少一种检查组大小是否相等的简单方法。有没有像are.groups.of.equal.size(x) 这样的单一的、神秘的函数?还是返回此类信息的另一个基本函数(或它们的组合)?
【问题讨论】:
-
table?aggregate?ddply?有很多方法可以做到这一点。 -
@joran - 我正在尝试使其自动化,因此该解决方案基本上会返回一个关于组大小是否相等的布尔值。我如何使用
table、aggregate或ddply来实现这一目标? -
table() 返回一个向量。只需检查该向量的所有元素是否相等。 sd() 将是一种快速的方法。
标签: r