很可能,如果你熟悉它,你可以在Matlab中完成它(儘管在Excel中它也很容易實現)。加載你的文件(不需要轉換它,Matlab讀取txt文件)。你可以這樣做:
fileID = fopen('test2.txt'); %//Your file name
Input = textscan(fileID,'%s %f','Delimiter',':');
GoodRows = find(~isnan(Input{2}));
column1 = Input{1}(GoodRows,:); //Column 1 is in the format of Cells (since you are storing Strings
column2 = Input{2}(GoodRows,:); //Column 2 is in the format of a Matrix, which will allow you to take numbers and do averages etc.
細胞和基質份額指標,這樣你就可以在單元格最終重新格式化您的數據並將其導出在Matlab。
column1 =
'sleep'
'eat'
'live'
'travel'
'work'
'school'
'vt'
column2 =
1.0E + 003 *
1.3604
0.0044
0.0164
0.0222
0.0220
0.0008
0.3869
==============編輯=============== 如果在字符串後有多個列,即: sleep,1.5,1.4,1.3
如果要繼續使用textscan,則需要指定有多少個列。這是通過做:
Input = textscan(fileID,'%s %f %f %f %f','Delimiter',':'); //% add %f for each numeric column.
或者
Input = textscan(fileID,'%s repmat('%f',[1,N])]','Delimiter',':'); %// where N is the number of numeric columns you have.
等待,所以你想把它導出到csv(即該excel可以打開)?或者你想將它們導入到Matlab中,我很困惑。您的行分隔符是「,」,列分隔符是「:」,您可以通過設置分隔符將其放入excel中,或使用'textscan'或'dmlread'將其放入matlab中 – GameOfThrows
謝謝您的回答。我想將它們導出爲.csv,並認爲通過matlab實現它的最佳方法是。我認爲這是因爲這是一週內15到15分鐘的數據,我想通過將它們平均分爲4組(如果這聽起來很複雜,抱歉),將它們變成1小時樣本。這是可能的還是太複雜? –
不,它不是太複雜。然而,通常預期會有一些原始努力的證據。對循環中文件的打開和讀取部分做一點研究。把一些東西放在一起,如果你遇到麻煩,回來編輯你的問題,包括你的代碼,你收到的錯誤和錯誤發生的地方。 – Jeeped