r - 将行列值与 R 中的唯一级别匹配
问题描述
我对 R 相当陌生,正在尝试从一列中获取与另一列中唯一级别相对应的所有数据帧行。我的数据框名为df
,有 2 列:preds
其中group
包含 20 个唯一级别。我正在尝试preds
获取group
.
数据框的示例如下:
preds group
1 18 (0,6.49e+03]
2 20 (0,6.49e+04]
3 49 (0,6.49e+02]
4 49 (0,6.49e+03]
5 20 (0,6.49e+04]
我的 for 循环尝试得到它如下:
for (i in unique(levels(df$group))){
results <- df$preds[df['group'] == i]
print(i)
print(results)}
这应该打印出preds
独特的关卡,看起来像这样:
(0,6.49e+03]
18, 49
(0,6.49e+04]
20, 20
(0,6.49e+02]
49
然而,这似乎每次只打印一个空向量。有人可以帮助我了解如何做到这一点,如果我什至以正确的方式尝试这样做吗?
谢谢
解决方案
也许你可以试试tapply
with(df,tapply(preds,group,c))
或者split
with(df,split(preds,group))
这使
$`(0,6.49e+02]`
[1] 49
$`(0,6.49e+03]`
[1] 18 49
$`(0,6.49e+04]`
[1] 20 20
推荐阅读
- python - 为什么某些网站出现 urllib 错误
- mysql - 如何减少查询的执行时间
- laravel - 如何在 Laravel 中导入具有各种模型(和子数据/模型)的单个 excel 文件/工作表?
- python - Numpy:从熊猫数据帧创建可变长度序列
- java - 从 Jhipster 中的 URL 中删除哈希 (#) (java 和 angular 6)
- css - 使用 scss 执行包含通用部分和特定部分的最小 css 规则集?
- amazon-web-services - docker 输出中的 AWS 会话管理器 ^@ 无限期
- .net - When does Start-Service know that win service actually completed full startup process and is in fully operational state?
- python - Xtick 标签不会旋转?
- php - PHP - 将匿名函数分配给其自己函数内的变量并使用它