2017-12-12 27 views
0

this questionへの回答を得た後、Matlabにデータをインポートする際に問題があることに気付きましたが、NaNとは関係なくテーブルに格納されているさまざまなデータ型を使用しています。私は不完全なMatlabテーブルの行を取得するには?

measurementTable = readtable('MWE.xlsx','ReadVariableNames',false,'ReadRowNames',true); 

Matlabのテーブルに

Matlab table

としてリードを用い

Excel table

Excelのテーブルをインポートする他の質問で使用したのと同じ例で

あなたはc列1〜4の値はセル型で、列5の値はdouble型です。私は今

measurementTable{'DATE',:} 

を使用して、テーブルの単一の行を取得しようとする場合、私は、エラーメッセージが表示されます。その種類のため

は、テーブル変数「VAR5」と「VAR1」を連結することはできません。ダブルとセルです。

この問題にはどのように対処できますか?

+0

は20170310に、例えば、数にあなたの日付を変更する2017年3月10日を試してみて、MATLABはdoubleとしてすべての値が表示されます。また、エラーはExcelのF列に日付がないために発生している可能性がありますか?目的を空白にしましたか? – uPhone

+0

はい私の実際のデータには、いくつかの場合に欠損値も含まれているので、私はそれを目的で行っています。インポートする前にテーブルの値を変更するにはどうすればよいですか?ワークフローでExcelで手動での前処理を含めたくないのは、データの評価が大幅に遅くなるためです。 – Axel

+0

EXCELでは、find&replaceを使用してすべての値を置き換えます。すべての空の値を置き換えるか、すべての日付を置き換えることができます。 – uPhone

答えて

0

Matlabがセルと倍精度を配列に結合しようとしているため、使用しているコマンドが失敗しました。

複数のデータ型があるため、セル配列に「行」を格納する必要があります。

次の操作を行うことにより、混合データの単一の行を取得することができます。

table2cell (measurementTable('DATE',:)) 
+0

あなたの答えをありがとう!どうやって結果のセルを使用して日付文字列をdatetime関数を持つスカラーdatetime配列に変換できますか?私はtable2cellの結果のセル配列を使用することはできないようです。 – Axel

+0

これは実際には別の質問ですので、あなたがしようとしていることを示すものとして尋ねる必要があります。 help 'datetime'はあなたを起動させるはずです。 – matlabgui

関連する問題