0

私はmatlabプロジェクトで作業しています。そして、私はこのようなテキストファイルを持っています

AGE 1   1
SEX 2   2
NOP 3   0
SES 0   5
PDD 6   6
ACD 0   0
UDC 8   3

以下のサンプルのように、textreadを使用して、このタブ区切りファイルから変数を作成したいと思います。

x= 

    'AGE'   1   1
    'SEX'   2   0
    'NOp'   3   3
    'SES'   0   5
    'PDD'   6   6
    'ACD'   0   0
    'UDC'   8   3

どうすればいいですか?私は多くのことを試みましたが、解決策を見つけることができませんでした。助けてください。

4

1 に答える 1

0

次の方法で実行できます。

Filename = 'testfile.txt';    
fid = fopen(Filename);
Output = textscan(fid, '%s %d %d', 'delimiter', ' ', 'MultipleDelimsAsOne', 1);
fclose(fid);

次に、次のようになります。

Output = 
{7x1 cell}    [7x1 int32]    [7x1 int32]

Output{1} =
'AGE'
'SEX'
'NOP'
'SES'
'PDD'
'ACD'
'UDC'

Output{2} =
       1
       2
       3
       0
       6
       0
       8

Output{3} =
       1
       2
       0
       5
       6
       0
       3

次に、セル配列要素を展開して、各要素を直接アドレス指定できるようにします。

x = [ Output{1}, num2cell(Output{2}), num2cell(Output{3}) ]

x = 
'AGE'    [1]    [1]
'SEX'    [2]    [2]
'NOP'    [3]    [0]
'SES'    [0]    [5]
'PDD'    [6]    [6]
'ACD'    [0]    [0]
'UDC'    [8]    [3]

そして、要素を直接アドレス指定できます。

x(1,1) = 
'AGE'

x(5,2) =
[6]
于 2012-06-18T21:10:21.933 に答える