EXCELからのデータ抽出
34 ビュー (過去 30 日間)
古いコメントを表示
初歩的な質問ですみません。数字が縦横にひたすら並べられたスプレッドシートがあるのですが、writematrixで横の列を選択し抽出することはできるのですが、同時に縦の列も選択して抽出することは可能でしょうか?
採用された回答
Atsushi Ueno
2021 年 10 月 15 日
>同時に縦の列も選択して抽出することは可能でしょうか?
いいえ。不可能です。
readmatrixの範囲指定オプションには下記2つの文法がありますが、データ型が異なるだけで、範囲指定の方法は殆ど同じです(微妙に異なります)。仰る通り「単一の行と列が交わる箇所を選択する」方法はあっても「行と列の交差する部分を複数同時に選択する」方法が見つかりません。
>例えば3の倍数の行のCとEの列のように抽出がしたいです
こういう事ですよね。
ExcelではCtrlキーを押しながら交差箇所をポチポチ選択していけば実現しますがそれは大変な作業です。行と列の交点を選択するにはINDEX関数とMATCH関数を組み合わせるなどの方法を取る必要があります。
一方、MATLABの行列(二次元配列)のでは抽出可能です。readmatrixで全ての表をMATLABに読み込んでから、行列のindexingで抽出できます。
matrix = readmatrix('Book1.xlsx');
A = matrix([3 6 9], [3 5])
B = matrix(3:3:end, [3 5]) % 3の倍数の行のCとEの列
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で スプレッドシート についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!