【发布时间】:2015-04-06 14:21:46
【问题描述】:
作为一个从 Matlab 过渡的人,我希望有任何建议,以找到一种更有效的方法来找到其索引(indxs)落在直方图箱(边缘)内的 DepDelay 值的平均值。在 Matlab 和我当前的 R 脚本中,我有以下命令:
edges = seq( min(t), max(t), by = dt )
indxs = findInterval( t, edges,all.inside=TRUE )
listIndx = sort( unique( indxs ) )
n = length( edges )
avgDelay = rep( 1, n) * 0
for (i in 1 : n ){
id = listIndx[i]
jd = which( id == indxs )
if ( length(jd) > minFlights){
avgDelay[id] = mean(DepDelay[jd])
}
}
我知道在 R 中使用 for 循环可能是一个令人担忧的问题,但我提出这个问题是为了提高代码效率。
当然。一些相关向量的sn-ps:
DepDelay[1:20] = [1] -4 -4 -4 -9 -6 -7 -1 -7 -6 -7 -7 -5 -8 -3 51 -2 -1 -4 -7 -10
和相关的索引值:
indxs[1:20] = [1] 3 99 195 291 387 483 579 675 771 867 963 1059 1155 1251 1351 1443 1539 1635 1731 1827
minFlights = 3
谢谢。
BSL
【问题讨论】:
-
您能告诉我们
DepDelay以使其可重现吗? -
当然。一些相关向量的sn-ps:DepDelay[1:20] = [1] -4 -4 -4 -9 -6 -7 -1 -7 -6 -7 -7 -5 -8 -3 51 - 2 -1 -4 -7 -10,以及相关的 indxs 值:indxs[1:20] = [1] 3 99 195 291 387 483 579 675 771 867 963 1059 1155 1251 1351 1443 1539 1635 1731 1827,minFlights =这有帮助吗?谢谢。
-
请将它们以可重现的格式编辑到您的问题中。
标签: r matlab histogram average bins