r - R中多列的值计数
问题描述
我有一个数据集,其中一组值分散在多列中:
ID | 优先级 1 | 优先级 2 | 优先级 3 |
---|---|---|---|
2308 | 写作 | 阅读 | 阅读 |
0329 | 阅读 | 沟通 | 写作 |
2389 | 沟通 | 写作 | 沟通 |
2934 | 写作 | 沟通 | 写作 |
我希望输出是一个表,其中第一列是找到的唯一值(写作、阅读、通信),其余列是优先级(优先级 1、优先级 2、优先级 3)。在每一列中应该是该实例的优先级计数。输出应如下所示:
优先类型 | 优先级 1 | 优先级 2 | 优先级 3 |
---|---|---|---|
写作 | 2 | 1 | 2 |
阅读 | 1 | 1 | 1 |
沟通 | 1 | 2 | 1 |
在我的实际数据集中,有很多优先级,所以如果可能的话,我们可以为列包含 1:n 吗?
先感谢您。
*编辑表已更新为新列以进行澄清。我想完全忽略 ID 列,只计算每个优先级列中的优先级。
解决方案
table(stack(df))
ind
values Priority 1 Priority 2 Priority 3
Communication 1 2 1
Reading 1 1 1
Writing 2 1 2
如果您希望它作为数据框:
as.data.frame.matrix(table(stack(df)))
Priority 1 Priority 2 Priority 3
Communication 1 2 1
Reading 1 1 1
Writing 2 1 2
推荐阅读
- javascript - React Native - 不变违规 - i18next 集成
- c# - 如何在打开的文档中显示/激活文本光标?[C#,EnvDTE]
- codeigniter - 在集合关系 nn 中使用 where 子句时的未知列
- session - 如何在 asp.net core 2.2.0 版本中创建对象值的会话?
- java - 流式传输文件到 azure Web 应用程序在 2 Go 处停止:SocketTimeoutException
- jms - 如何设置 ActiveMQ Artemis 重新传递策略不阻塞队列
- react-native - 不变违规:缺少导航道具
- javascript - 是否可以使用旋转的标题单元格制作粘性表格标题?
- selenium-webdriver - 连接被拒绝时测试失败:连接
- c++ - C++ destructor recycling