r - 在一定频率后循环填充矩阵
问题描述
我的目标是以 102 (510/5) 的频率将这些值转换为 64 天。每天有 510 个值,我想每第五个值(1,6,11,... 以制作 102*64 的最终矩阵)选取一次。使用以下代码:
data <- read.csv(file="voljump.csv", header=FALSE, sep=",")#32640
mat <- data.matrix(data)
fin_data <- t(mat)
days <- nrow(data)#32640
freq <- 510
data_5 <- matrix(0, freq, days)
for(j in 1:days) {for (i in 1:freq)
{data_5[i,j] <- fin_data[(i-1)*4+1 ,j]}}
我收到一个错误:
“fin_data [(i - 1) * 5 + 1, j] 中的错误:下标越界”
解决方案
我想下面的代码可能会达到你的目标
data_5 <- fin_data[seq(1,510,by=5),]
推荐阅读
- sql - 在 python 中使用 cx_Oracle 的一个事务中有许多 SQL DML 语句
- r - 我在 RStudio 中找不到“编织”按钮
- jquery - 使用十进制 MVC 进行验证
- python - 子进程完成后如何删除文件/目录?
- python-2.7 - 在同一列中选择同时满足两个条件的行(熊猫)
- python - 错误 - 在不支持分叉的系统上尝试在不保护您的导入的情况下进行并行计算。
- c# - 删除 WCFDiagnosticsExample.svclog 是否安全
- javascript - 在 JSX 表达式中连接字符串和 HTML
- sql - 如何在SQL中的两行和同一列之间进行减法?
- shell - “w”命令不显示不同的终端会话 Ubuntu 16.04