Read data from file
1 次查看(过去 30 天)
显示 更早的评论
I have a huge file with data format:
(2,4) (5,6)
(34,26) (22,78)
(18,76) (33,50) etc.
I want to create 4 matrix with data as(2,34,18) ; (4,26,76); (5,22,33) and (6,78,50). I used textscan to read the data but couldn't use it aptly. If anybody could guide me with it, it will be very helpful.
2 个评论
Image Analyst
2017-7-3
Make it easy for people to help you by attaching the file. We don't need all 42 terabytes of it, just a few lines.
KSSV
2017-7-3
Check this link for similar question:
采纳的回答
per isakson
2017-7-3
编辑:per isakson
2017-7-3
Two variants
fid = fopen( 'cssm.txt' );
cac = textscan( fid, '(%d,%d) (%d,%d)', 'Whitespace','' ...
, 'Delimiter',' ', 'CollectOutput',true );
fclose( fid );
num1 = cac{1};
fid = fopen( 'cssm.txt' );
cac = textscan( fid, '%d%d%d%d', 'MultipleDelimsAsOne',true ...
, 'Delimiter','(),', 'CollectOutput',true );
fclose( fid );
num2 = cac{1};
m1 = permute( num2(:,1), [2,1] );
m2 = permute( num2(:,2), [2,1] );
m3 = permute( num2(:,3), [2,1] );
m4 = permute( num2(:,4), [2,1] );
Inspect the result
>> all(all(num1==num2))
ans =
1
>> num2
num2 =
2 4 5 6
34 26 22 78
18 76 33 50
>>
Do you really want m1,m2,m3 and m4?
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Import and Export 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!