1

这是我的数据框df:

x y

1 1 1
2 1 2
3 2 3

我得到了结果:

2
3

使用代码:

tapply(df$y, df$x, sum)

但我希望得到

3
3

我的代码有问题吗?

4

1 回答 1

4

你得到了正确的答案,只是读错了。

查看整个输出:

> tapply(df$y, df$x, sum)
1 2 
3 3 

您的组是 1 和 2,值是 3 和 3。是水平的。如果您尝试tapply另一个方向,您会看到这一点

> tapply(df$x, df$y, sum)
1 2 3 
1 1 2
于 2013-01-22T14:49:27.667 回答