excelデータのインポートに関して
5 ビュー (過去 30 日間)
古いコメントを表示
excelデータのインポートの際に、cell配列にする質問です。
excelデータには、60×27のデータがあります。それを60の行に1×27のデータを持ったcell配列(60×1の行列に変換)にするにはどうしたらいいですか?
cell配列としてデータをインポートし、そのcell配列を分解する方法も試しましたが、上手く出来ませんでした。
上手く説明出来ないので、例を示します。
例)4×5 → 4×1(1つの行に5列のデータを持ったcell配列)
1 2 3 4 5 {1 2 3 4 5}
5 6 7 8 9 → {5 6 7 8 9}
1 2 3 4 5 {1 2 3 4 5}
5 6 7 8 9 {5 6 7 8 9}
0 件のコメント
採用された回答
Akira Agata
2020 年 10 月 29 日
以下の方法ではいかがでしょうか?
A = readmatrix('sample.xlsx');
C = mat2cell(A,ones(1,size(A,1)));
>> C
C =
4×1 の cell 配列
{1×5 double}
{1×5 double}
{1×5 double}
{1×5 double}
3 件のコメント
Akira Agata
2020 年 11 月 2 日
編集済み: Akira Agata
2020 年 11 月 2 日
うまくデータの整理に役立ったようで良かったです。
さて追加のご質問についてですが、正直なところ用途によって変わってくるかと思います。
単純に配列を学習用と検証用に分けたいということでしたら、cvpartition 関数が役立つかと思います。
また、いくつかの分類・回帰用の関数では、事前に学習用と検証用にデータを分けることなく交差検証などの評価を実施することができます(たとえばSVMによる分類をおこなう fitcsvm 関数の 'CrossVal' オプションを 'on' にするなど)。
その他、分類・回帰学習器アプリでも、事前に学習用と検証用にデータを分けることなく交差検証などの評価を実施することができますので、ぜひお試しください。
https://jp.mathworks.com/help/stats/classificationlearner-app.htm
https://jp.mathworks.com/help/stats/regressionlearner-app.htmll
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で アンサンブル分類 についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!