2016-09-16 16 views
-1

matlabワークスペースにデータをインポートする際に問題があります。私のファイルは8列の行とたくさんの行を持つ.txtファイルです(カウントできません)。最初の5つの列は数字ですが、最後の3つはパス(文字)です。各パスは、最初の5つのデータに対応するイメージの位置を示します。 私はファイル全体を行列に保存したい、ロードを試みたが(文字を混在させても機能しない)、textscan(しかし、それはちょうど行ベクトルを与える)、impordata(しかし、 )、fscan ....私はすべてのコマンドを試したと思うし、まだ動作しません。matlabに.txtファイルをインポートすると何かが動作する

私が持っているテキストは、将来それを扱うために保存したい別の変数であることを指定したい、見出しではない。

誰でも助けてくれますか?

ありがとうございます。

+0

行列は数値を格納できるだけで、セルが必要だと思います。 – obchardon

+1

Matlabの[Txtインポート]の可能な複製、さまざまな行形式](http://stackoverflow.com/questions/17813666/txt-import-in-matlab-different-row-formats) – dasdingonesin

+0

私は見出しを持っていませんが、私は自分のテキストを将来的にそれを扱う別の変数にしたい。 obchardonはすでに私の問題を解決しました。 – Alex

答えて

2

あなたは、セルではなく、行列にデータを格納する必要があり、関数textscanはあなたの列の間に特定の区切り文字を持っている場合は、この区切り文字を指定することができます任意の問題

fileID = fopen('file.txt'); 
C = textscan(fileID,'%f %f %f %f %f %s %s %s'); 
fclose(fileID); 

せずに動作するはずです:

C = textscan(fileID,'%f %f %f %f %f %s %s %s','Delimiter','|') 
+0

私はあなたの行を試して、matlabは1x8のセルとしてCを読んで、各セルは2149x1の二重のデータを含んでいて、それをクリックすると、私のデータを持つ行ベクトルが表示されます。しかし、私は私のデータがテーブルを持っていることを示すために、私は私が望むすべてのデータを取ることができますmatlabにします。私が望むデータを取るために行と列の位置を与えることができるようにCからデータを取る方法はありますか? – Alex

+0

[セル内のデータにアクセス](http://mathworks.com/help/matlab/matlab_prog/access-data-in-a-cell-array.html) – obchardon

+0

MatlabはDBMSではありません。テーブルの同じ概念。 – obchardon

関連する問題