how to import a text (.txt) file to MATLAB?
6 次查看(过去 30 天)
显示 更早的评论
how can i import a text (.txt) file that incloude several column and row whitout using Exel ??? i copy txt file to a new exel file and use : [numdata,txtdata]=xlsread('MyExelFile') to import it in MATLAB , and i want directly import this txt file to MATLAB without using Exel... Answer me...Thanks
0 个评论
采纳的回答
per isakson
2012-12-24
编辑:per isakson
2012-12-26
.
Interactively:
I think the simplest way is to read the file interactively with "Import Data ..." in the File menu (R2012a).
.
Width code:
fid = fopen('cssm.txt', 'r' );
cac = textscan( fid, '%f%f%f%f%f%f', 'CollectOutput', true, 'Headerlines', 2 );
fclose( fid );
cac{:}
returns
ans =
1.0e-03 *
0 0 0 0 0 0
0 0 0 0 0 0
1.0000 0 1.0000 0 1.0000 0
1.0000 0 1.0000 0 1.0000 0
1.0000 0 1.0000 0 1.0000 0
where cssm.txt contains
XY
COP x COP y COP z
0 0 0 0 0 0
0 0 0 0 0 0
0.001 0 0.001 0 0.001 0
0.001 0 0.001 0 0.001 0
0.001 0 0.001 0 0.001 0
.
Including the header:
fid = fopen('cssm.txt', 'r' );
h1 = textscan( fid, '%s', 1 );
h2 = textscan( fid, '%s%s%s%s%s%s', 1, 'CollectOutput', true );
cac = textscan( fid, '%f%f%f%f%f%f', 'CollectOutput', true, 'Headerlines', 0 );
fclose( fid );
h1{:}
h2{:}
cac{:}
returns
ans =
'XY'
ans =
'COP' 'x' 'COP' 'y' 'COP' 'z'
ans =
1.0e-03 *
0 0 0 0 0 0
0 0 0 0 0 0
1.0000 0 1.0000 0 1.0000 0
1.0000 0 1.0000 0 1.0000 0
1.0000 0 1.0000 0 1.0000 0
.
Mimicing xlsread output
fid = fopen('forceplate_3.txt', 'r' );
h1 = fgetl( fid );
h2 = textscan( fid, '%s%s%s%s%s%s', 1, 'CollectOutput', true );
cac = textscan( fid, '%f%f%f%f%f%f', 'CollectOutput', true, 'Headerlines', 0 );
fclose( fid );
txtdata = repmat({''}, 2, 6 );
txtdata(1,1)= {h1};
txtdata(2,:)= h2{:};
numdata = cac{:};
the results are:
>> whos *data
Name Size Bytes Class Attributes
numdata 21000x6 1008000 double
txtdata 2x6 1382 cell
12 个评论
per isakson
2012-12-26
编辑:per isakson
2012-12-30
@Walter, thanks!
@Mohammad,
- If you want to learn Matlab you need to experiment a bit. You should not assume us to do everything for you.
- Next time you post a question please show that you made an effort yourself!
Walter Roberson
2012-12-26
Odd, those first two links do show images for me. The aren't much of interest though, just variable explorer showing the size of the two arrays.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Large Files and Big Data 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!