r - 过滤行数大于列数的*n矩阵
问题描述
我有一个 *n 矩阵,并希望选择行号大于其列号的这些数据。
我试过在 R 中使用循环,问题是太慢了。
matrix_new <- NULL
for (i in 1:nrow(matrix)) {
for (j in 1:ncol(matrix)) {
if (i > j) {
matrix_new <- c(matrix_new, matrix[i,j])
}
}
}
双循环在 R 中似乎很慢。有没有有效的方法来做到这一点?
解决方案
下三角矩阵有一个基 R 函数:
m[lower.tri(m, diag = F)]
推荐阅读
- php - ZipArchive::addFromString() 期望参数 2 是字符串、资源
- sql - 使用 DISTINCT MAX 的数据过多
- javascript - 使用导入/导出默认语法从存储库导入文件时,Jest 失败
- python - 如何使用python中的比率填充缺失的性别数据?
- python - 在python中匹配相似光谱中的峰
- telegram - 如何使用 Telegram Bot API 发送带有自毁定时器的照片?
- angular - How to: Re-send an http request when using async pipe
- r - R软件中保存的模型显示加载错误
- javafx - 如何使用 JavaFX 在警报中播放视频?
- r - 无法将图例添加到经济时间序列图表