how to read data into matlab

HI I have a data of this format:
0001 1111111111111101111111001111010100100000 0002 1111111111100111111010101000010000000000 0003 1111111010111100010000010100010000000000 0004 1111111111111111111111111101000001000000 I want to read the first four columns (i.e., 0001 or 0002 or 0003 or 0004) as an individual variable. For the rest, I want each column as an individual variable.
tried dlmread or load, they return me senseless data like this: dlmread('Resp_R2_T6_c1.dat','')
ans =
1.0e+039 *
0.0000 1.1111
0.0000 1.1111
Can somebody kindly show me how to read data like this?
THank you!

1 Comment

It's not senseless. Change the display format.
doc format

Sign in to comment.

 Accepted Answer

Try this 'trick'
c = cell2mat(b);
d = c - '0'

More Answers (3)

Maybe you can read it in as strings and then do whatever processing you want to.
>> [a,b]=textread('Resp_R2_T6_c1.dat','%s%s')
a =
'0001'
'0002'
'0003'
'0004'
b =
'1111111111111101111111001111010100100000'
'1111111111100111111010101000010000000000'
'1111111010111100010000010100010000000000'
'1111111111111111111111111101000001000000'

3 Comments

>> cellfun(@str2num,a)
ans =
1
2
3
4
>> bin2dec(b)
ans =
1.0e+012 *
1.0995
1.0991
1.0941
1.0995
or try
[a,b]=textread('Resp_R2_T6_c1.dat','%d%s')
char(b)=='0'

Sign in to comment.

Wei
Wei on 30 Jun 2011
would you mind showing me a little bit more about the next step? Struggled with cell for a while but did not get any good luck so far. I even could not successfully convert a from string to numericals.
Many thanks!
Provided your file is in the MATLAB path, you can use importdata
data = importdata('file_name.txt')
Once you read in all of the data, you can use cell allocation to call your appropriate variables.
So if you want the first column as an individual variable (call it x), then
x = data(:,1)
assigns all of the components of the first column into the variable. Hope this helps.

Tags

Asked:

Wei
on 30 Jun 2011

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!