Read text file in MATLAB

1 回表示 (過去 30 日間)
fendertunes
fendertunes 2016 年 7 月 3 日
コメント済み: Azzi Abdelmalek 2016 年 7 月 3 日
Hi,
I have a .txt file with lots of lines of text in the following format -
18400 8510.27+j8207.84
19200 1336.93+j3261.25
20000 14176.3+j11725.7
I would like to read this in matlab and plot it. How can I do it?
I have tried converting the .txt to .xlsx and using xlsread function -
[col1, col2] = xlsread('myfile.xlsx');
But the result is a double and a cell matrix. I can't treat cell as a number to plot.
Also the length of rows in the .txt file could vary (could be 100 rows, couple be 10,000 rows). Is there a way to read the numbers? I am ok with creating temporary variables, using repmat or doing str2num conversion. However, I haven't figured out a way to do it so far.

採用された回答

Azzi Abdelmalek
Azzi Abdelmalek 2016 年 7 月 3 日
編集済み: Azzi Abdelmalek 2016 年 7 月 3 日
M=importdata('yourfile.txt')
a=regexp(M,'\S+','match');
b=strrep([a{:}],'j','j*')
c=str2double(b)
out=reshape(c,[],2)
  2 件のコメント
fendertunes
fendertunes 2016 年 7 月 3 日
Azzi, When I do it this way, I get the following error message: Error using dlmread (line 147)
Mismatch between file and format string.
Trouble reading 'Numeric' field from file (row number 2, field number 1) ==> +j0\n
Also, some rows have complex values saved as -
12000 15142.1+j-1037.75
12800 51708.5+j-4586.51
Maybe MATLAB has a problem interpreting this?
Azzi Abdelmalek
Azzi Abdelmalek 2016 年 7 月 3 日
look at edited answer

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeText Files についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by