3次元配列データのExcelへのエクスポート
Show older comments
.matファイルに保存した変数の3次元配列をExcelにエクスポートしたいのですが、どのようにすれば良いのでしょうか
2 Comments
Atsushi Ueno
on 17 May 2023
どの様な出力形式が求められていますか?
- 次元を落として1枚のシートに表現する ⇒ reshape関数とwritematrix関数等を使う
- 3次元方向を複数のシートに分けて保存する ⇒ writematrix関数等を複数回使う
- 可読性が無くても良いから兎に角 Excel ファイルにする ⇒ 当該.matファイルをExcelファイルに埋め込む
【類似の質問】リンクと回答者コメントの翻訳を羅列しました
xlswriteは一度に1つのシートにしか書き込めないので、2D形式のデータしか書き込めません。3Dデータを書き込むには、データを大きな2D配列に整形するか、データの各シートをエクセルファイルの1シートに保存するループを実行することになります。
xlswrite() of reshape(YourArray, size(YourArray,1), []) で、必ず .xlsx 出力にしてください(.xls では行数が多すぎるでしょう)。5×5のシートが44040枚あるスプレッドシートを作ることも可能ですが、それはちょっともったいない気がします。
以下のいずれも、3次元行列の3次元形式での保存をサポートしていません:
- save -ascii (ASCII形式)
- dlmwrite
- xlswrite
- writetable、writematrix、writecell
- imwrite(ほとんどの画像タイプに対応)
3次元行列を3次元として保存することをサポートするフォーマットを以下に示します:
- save (バイナリ形式)
- Tiffクラス
- dicomwrite
- tiffなど一部の画像形式に対するimwrite
- EDFファイルフォーマットのサポート
- HDFファイルフォーマットのサポート
- json
Tsuduri
on 17 May 2023
Accepted Answer
More Answers (0)
Categories
Find more on スプレッドシート in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!