r - 如何汇总多列的值?
问题描述
我有一个看起来像这样的数据框:
1 2 3 4 5
A B A B A
C B B B B
A C A B B
我想在一个频率表中总结我的数据,如下所示:
A B C
1 2 0 1
2 0 2 1
3 2 1 0
4 0 3 0
5 1 2 0
我怎么能做到这一点?
解决方案
您可以使用以下解决方案:
library(tidyr)
library(janitor)
tab %>%
pivot_longer(everything(), names_to = "nm", values_to = "val",
names_prefix = "X") %>%
tabyl(nm, val)
nm A B C
1 2 0 1
2 0 2 1
3 2 1 0
4 0 3 0
5 1 2 0
推荐阅读
- javascript - 从 mongodb 返回数据时节点 JS 错误
- android - Android:将Json字符串转换为List,反之亦然
- c# - 如何编写单个方法而不是具有单个布尔表达式差异的两个方法
- c++ - 使用 lambda 表达式的 Raspbian G++ 8.3.0 会导致 ']' 之前的预期主表达式 - 即使标准设置为 c++14
- android - 训练 kNearest 时,大小为 20x20 的 Mat 被重新调整为 1x1200
- python-3.x - 如何在 TensorFlow 2.0 中做到这一点?
- python - pytest-cov 不使用新的覆盖版本 5.X 生成报告,适用于覆盖版本 4.4.2
- r - kableExtra column_spec 中的宽度不准确
- amazon-web-services - 使用 Powershell 报告 AWS 安全组
- mysql - 你的意见:MySQL-API 一对多关系,VueJS 和 JSON