2
我有一個文本文件,它看起來像這樣的文本文件:加載包含數字和字母
A B C
1 2 3
(這是什麼其實我有隻是一個小例子,我實際的文件是巨大的,在變化。行數。)
我想把這個文件加載到Octave中。但是,該文件包含字母,而不僅僅是數字。當我嘗試應用加載函數時,出現錯誤,我想這是因爲加載函數只接受數字。 我應該使用什麼函數呢?
我有一個文本文件,它看起來像這樣的文本文件:加載包含數字和字母
A B C
1 2 3
(這是什麼其實我有隻是一個小例子,我實際的文件是巨大的,在變化。行數。)
我想把這個文件加載到Octave中。但是,該文件包含字母,而不僅僅是數字。當我嘗試應用加載函數時,出現錯誤,我想這是因爲加載函數只接受數字。 我應該使用什麼函數呢?
調用fopen,fscanf和fclose。對於僅包含字母的行(如'%s\t%s\t%s'
)以及僅包含數字的行(如),格式字符串必須不同。您可以通過單個fprintf調用讀取具有相同結構的行。
實施例文件(data.txt中):
A B C
D E F
1 2 3
4 5 6
7 8 9
10 11 12
假設我們事先知道該文件包含3列和2行與在開始字符:
fid = fopen('data.txt', 'r');
[x, nx] = fscanf(fid, '%s\t%s\t%s', [3, 2]);
[y, ny] = fscanf(fid, '%g\t%g\t%g', [3, Inf]);
fclose(fid);
的線字符將在x'
之間,帶號碼的行將包含在y'
之內。
嗯,這實際上只是我實際擁有的一個最小示例(這是一些大量文本文件,其行數不同)。 – Speldosa
是否有任何結構,我的意思是,你能提前告訴哪些行只包含字母,哪些行只包含數字? – kol
是的。我知道第一行和第二列將只包含字母。其他一切都是數字。 – Speldosa