Info

This question is closed. Reopen it to edit or answer.

importing a column of data from a text file

1 view (last 30 days)
Siddharth
Siddharth on 29 May 2013
Closed: MATLAB Answer Bot on 20 Aug 2021
i need to import a particular column of data from a text file. the columns are differentiated by the size of the numbers. For example :
20 30000
21 40000
24 50000
how can i do so?

Answers (2)

Azzi Abdelmalek
Azzi Abdelmalek on 29 May 2013
Edited: Azzi Abdelmalek on 29 May 2013
Import the data using
data=dlmread('yourfilename.txt')
Then choose the column you want
data(:,2)
% You can get the sizes of numbers in each column
numbers=arrayfun(@(x) numel(num2str(x)),data(1,:))
  3 Comments
Azzi Abdelmalek
Azzi Abdelmalek on 29 May 2013
Edited: Azzi Abdelmalek on 29 May 2013
data=dlmread('yourfilename.txt')
numbers=arrayfun(@(x) numel(num2str(x)),data(1,:))
[idx,idx]=max(numbers)
result=data(:,idx)
Azzi Abdelmalek
Azzi Abdelmalek on 29 May 2013
or simply
data=dlmread('yourfilename.txt')
[idx,idx]=max(data(1,:))
result=data(:,idx)

Andrei Bobrov
Andrei Bobrov on 29 May 2013
Edited: Andrei Bobrov on 29 May 2013
d = dlmread('yourtxtfile.txt');
[k,k] = max(log10(d(1,:)));
out = d(:,k);
or
[k,k] = max(log10(d(:)));
out = d(:,ceil(k/size(d,1)))

This question is closed.

Community Treasure Hunt

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

Start Hunting!