使用 by
我可以根据因子列获取所需列的统计信息。
例如,如果我想知道每个物种的 Sepal.Width/Sepal.Length 的比率,在 iris 数据框中,我会这样:
by(iris$Sepal.Width/iris$Sepal.Length, iris$Species, mean)
iris$Species: setosa
[1] 0.6842483
------------------------------------------------------------
iris$Species: versicolor
[1] 0.4676804
------------------------------------------------------------
iris$Species: virginica
[1] 0.4533956
到现在为止还挺好。现在,问题是,我如何才能相同但仅适用于一部分级别。例如仅 setosa 和 versicolor ?
我有一个包含数千个因素的复杂 data.frame。我正在玩一些表格,以便根据不同的统计数据创建因子的子集。然后我想回到我原来的 data.frame 并为我想要的因子子集创建更多数字。
谢谢
最佳答案
with( droplevels( subset(iris, Species %in% c("setosa", "versicolor") ) ),
by(Sepal.Width/Sepal.Length, Species, mean) )
关于r - 如何从一组因素中获取统计数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16313664/