r - 循环遍历R中的数据框列
问题描述
如何循环以对 R 中具有相似名称的列执行相同的测试?
例如,我有三列,分别命名为 col30、col126、col145。我在想类似的事情:
x <- c(30, 126, 145)
for (i in x) {
wilcox.test(col(i) ~ level)
}
不起作用并提供以下错误:
eval 中的错误(predvars,data,env):尝试应用非函数
解决方案
您可以使用apply
function 而不是 afor loop
并为选定的列迭代相同的测试:
apply(df[, c(col30, col126, col145)], 2, wilcox.test ~ level)
推荐阅读
- python - Pandas 将数据导出到 Excel 文件(超链接)
- javascript - 反应 onChange 不起作用。有人能帮我吗?
- html - 在 Azure 中发布时不显示选择控件
- javascript - 如何使用RegExp从(键,值)对的字符串中提取值?
- swift - 添加使用其他 SPM 作为其内部依赖项的 SPM 时出现错误提示“未找到模块”
- spring - 无法启动 Spring Boot 项目
- objective-c - 呈现 UIDocumentPickerViewController 并关闭它会使呈现的视图控制器保持冻结状态
- c# - ASP.NET Core Web API 端点与数据库的连接,最佳实践?
- javascript - Google javascript 客户端 api:如何获取个人资料名称?
- ruby-on-rails - Spree - 产品图像变体中的问题