[問題] 矩陣資料輸入 (已爬過精華區)已回收

看板MATLAB作者 (超脫歸心)時間17年前 (2008/11/01 09:47), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串1/1
我本來的資料格式是 csv 所以我使用csvread來讀取。 但是現在出現了兩個問題, 第一個是 csvread的回傳值是double 而我的矩陣中的第一列資料是1999/3/3之類的日期資料。 所以無法順利輸入。 而當我把第一列的資料砍掉之後 資料範例如下: 5183.43 5295.05 5130.71 5130.71 3804400 5130.71 而讀取結果是 1.0e+006 * 0.0052 0.0053 0.0051 0.0051 3.8044 0.0051 如果我在把上面的數值就變成: 5200 5300 5100 5100 3804400 5100 誤差太大了阿阿阿阿!!! 有沒有人有什麼方法可以救救我!!! 額外的問題是, 當我要輸入第一行為文字,第二三行為數字的格式 但是我想要同時放在一個文字陣列之中。 我現在想到的方法是 [num,txt]=elxread('test.xls); 然後再將num 和txt這兩個陣列做格式轉換, 在合併成一個文字陣列。 不然有沒有什麼方式可以直接輸入成一個文字陣列呢? 使用testscan這個指令來指定格式,是個可行的方式嗎? 因為我直接用M=load('test.csv')的結果是: 輸入前: 1998/5/18 3804400 5130.71 輸入後: 1998 5 18 看到這個結果,我只好換順序 輸入前: 3804400 5130.71 1998/5/18 輸入後: 1.0e+006 * 3.8044 0.0051 0.0020 有人有什麼好方法嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.229.224.174

11/01 12:54, , 1F
螢幕顯示讓你看的東西和記憶體內部儲存的東西是不一樣的
11/01 12:54, 1F

11/01 12:54, , 2F
你有沒有單獨叫出一個元素來看過?
11/01 12:54, 2F
文章代碼(AID): #192xL0Q6 (MATLAB)
文章代碼(AID): #192xL0Q6 (MATLAB)