r - 在移动到下一列之前是否有读取特定值的 R 代码?
问题描述
在移动到下一列之前,是否有一个 R 代码按列读取矩阵中的特定值(超过 x)?该值每行只能确认一次。此外,每列的总和必须超过 15 的值。
Col1 Col2 Col3 Col4 Col5
Row1 16* 12 16 6 8
Row2 16 10 8 17 10*
Row3 12 13 18* 9 17
Row4 13 7 12 19* 15
Row5 7 17* 15 15 13
Row6 14 3 10 6 10*
Sum 16 17 18 19 20
除了第 5 列将使用第 2 行和第 6 行的总和超过值 15 (20)
解决方案
此循环获取每列中超过 15 的第一个值,并且每行仅使用一次。它通过用零覆盖所选行来实现这一点。它不是一个完整的解决方案,但它可能仍然有帮助。
chosenNumber <- c()
for(i in 1:ncol(mydata)){
where <- min(which(mydata[,i]>15))
chosenNumber[i] <- mydata[where,i]
mydata[where,] <- 0
}
> chosenNumber
[1] 16 17 18 17 NA
数据:
mydata <- as.matrix(read.table(text=' Col1 Col2 Col3 Col4 Col5
Row1 16 12 16 6 8
Row2 16 10 8 17 10
Row3 12 13 18 9 17
Row4 13 7 12 19 15
Row5 7 17 15 15 13
Row6 14 3 10 6 10',header=T))
推荐阅读
- azure-devops - 如何在较新的 azure-devops-extension-sdk 包中获取当前团队 ID
- python - Scrapy 上的蜘蛛爬行错误,用户代理不工作
- python - 错误 400:redirect_uri_mismatch - Google 电子表格 API - Python
- ios - 配置文件与 com.apple.developer.default-data-protection 权利的权利文件值不匹配
- monaco-editor - 摩纳哥编辑器是否支持小地图中的增量装饰?
- python - 有没有办法将循环结果作为熊猫数据框?
- angular - Angular 使用私有库
- c++ - 提升矩阵矩阵产品定义
- android - Flutter - W/ClipboardManager(10439):不支持 ClipboardEx
- python - inspect.isabstract 在抽象类上返回 false