How to split data into several segments so that in each segment, the number of NaN is not more than a certain value.
1 回表示 (過去 30 日間)
古いコメントを表示
I have a large data which contains around 6,500,000+ data points. I need to split/divide my data into several segments so that in each segment, the number of consecutive NaN is not more than 18,000. What should I try? Thanks.
1 件のコメント
Rik
2018 年 1 月 15 日
Is that the only requirement? If so, you can simply use isnan and a bit of code.
採用された回答
Image Analyst
2018 年 1 月 15 日
Try this (just off the top of my head):
data = rand(1, 6500000);
segmentLength = 1000000; % Whatever...
nansPerSegment = 30000; % Whatever...
for k = 1 : segmentLength : length(data)
lastIndex = min(length(data), k + segmentLength - 1);
thisData = data(k:lastIndex);
numElements = numel(thisData);
nanLocations = k + randperm(numElements, nansPerSegment) - 1;
data(nanLocations) = nan;
end
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Polar Plots についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!