Need to fill out skipped rows in a matrix
1 回表示 (過去 30 日間)
古いコメントを表示
Davis Philip Reina-Guerra
2022 年 10 月 7 日
コメント済み: Davis Philip Reina-Guerra
2022 年 10 月 7 日
I have a data analysis code which spits out values by experimental trials 1-10. The problem is that some trials (by design) do not produce a value, meaning some of the data is "complete" and some is "partial". I need help filling out the partial data with the missing trials so that all data matrices are 10x2 and it is straightforward to perform operations on them.
I think this example illustrates my point best. How do I approach this? Even just links to relevant documentation would help a ton, I am still fairly new to the MATLAB universe
0 件のコメント
採用された回答
Davide Masiello
2022 年 10 月 7 日
編集済み: Davide Masiello
2022 年 10 月 7 日
Take this example
complete = [(1:10)',rand(10,1)]
partial = [sort(randperm(10,6))',rand(6,1)]
You can apply the following to you dataset.
missing_n = ~any(partial(:,1) == 1:10,1)
newpartial = zeros(size(complete));
newpartial(missing_n,:) = [find(missing_n)',nan(nnz(missing_n),1)];
newpartial(~missing_n,:) = partial;
partial = newpartial
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!