0
一個結構陣列我有一個包含信息的文件如下:解析文件,以在Matlab
id allele1 allele2
1 A A
2 T A
3 A A
. ...
. ...
. ...
我想文件解析成含有一個結構陣列三個字段(id, allele1, allele2)
其中id是所有從1號最多n個,allele1是第一列字符,allele2是第二列。
但是我很難搞清楚如何去做這件事。
一個結構陣列我有一個包含信息的文件如下:解析文件,以在Matlab
id allele1 allele2
1 A A
2 T A
3 A A
. ...
. ...
. ...
我想文件解析成含有一個結構陣列三個字段(id, allele1, allele2)
其中id是所有從1號最多n個,allele1是第一列字符,allele2是第二列。
但是我很難搞清楚如何去做這件事。
未來,最好展現你的嘗試。但是,這應該讓你開始。
fid = fopen('input.txt','r');
%header line
line = fgetl(fid);
header = regexpi(line,'\W+','split');
ID=1;
%read first line
line = fgetl(fid);
while ischar(line)
l = regexpi(line,'\W+','split');
for i=1:numel(l)
data(ID).(header{i}) = l(i);
end
ID = ID+1;
line = fgetl(fid);
end
fclose(fid);
,導致:
>> data
data =
1x4 struct array with fields:
id
allele1
allele2
>> data(1)
ans =
id: {'1'}
allele1: {'A'}
allele2: {'A'}
>> data(2)
ans =
id: {'2'}
allele1: {'T'}
allele2: {'A'}