多くの nan 値を持つ 5000 行のベクトルの zscore を計算しようとしています。これを何度も計算する必要があるため、ループを使用したくないので、ベクトル化されたソリューションを見つけたいと思っていました。
ループソリューション:
for i = 1:end
vec(i,1) = (val(i,1) - nanmean(:,1))/nanstd(:,1)
end
部分的なベクトル化されたソリューション:
zscore(vec(find(isnan(vec(1:end) == 0))))
ただし、これは元のベクトルの長さから nan 値を引いたベクトルを返します。したがって、元のサイズと同じではありません。
ベクトルの zscore を計算し、単語の後に欠落しているデータを補間したいと考えています。これを何百回も行う必要があるため、高速なベクトル化されたアプローチを探しています。