如何对整个 R 数据框进行制表?
我有一个数据框,其中包含列 v1, v2, ..., v30
,其中包含相同的因子变量,尽管列与列之间的级别不同(“210N”下)例如,v3 可能不会出现在 v5 下 - 我不确定这是否会导致我的麻烦)。理想情况下,我希望,而不是执行 table(df$v1)
、table(df$v2)
,...然后继续 table (df$v30)
,并将我感兴趣的值的所有计数相加,有某种解决方案可以执行与 table(df$[, v1... v30])
- 没有要求我在所有列中强制执行相同的级别,理论上总共应该有大约 6000 个级别。
到目前为止,我天真地尝试将 v1 上的表与 v2 上的表合并,并设置了 all=TRUE
,尽管这并不能解决问题:随后的表包含两个不同的计数对于相同的因子水平,即“210N”出现两次,但频率不同。
I've got a data frame containing, say, the columns v1, v2, ..., v30
which contain the same factor variables, although the levels are different from column to column ('210N' under v3 might not appear under v5, for example - I'm not sure whether that is contributing to my trouble). Ideally, I'm hoping that, rather than doing a table(df$v1)
, table(df$v2)
, ... and onward to table(df$v30)
, and adding up all the counts of the value I'm interested in, there's some kind of solution out there that performs the equivalent of table(df$[, v1...v30])
- without requiring me to enforce the same levels across all columns, as in theory there should be around ~6000 levels in all.
So far, I've naively tried to merge a table on v1 with a table on v2, with all=TRUE
set, although that doesn't do the trick: the the ensuing table contains two different counts for the same factor level, i.e, '210N' appears twice, but with different frequencies.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这是执行此操作的一种方法
Here is one approach to do this
一种方法是
One approach is