我是MATLAB新手,我目前有一個腳本,每秒爲變量n生成不同的值。所以我最終需要將100個數據傳輸到excel。目前,我通過複製粘貼來手動執行此操作,但確實需要很長時間。如何在Matlab上生成的excel中自動記錄數據
我曾考慮過使用xlswrite命令,但它只是在第一列上寫入數據,並在生成新數據時一直覆蓋該列。
你能幫助我還是讓我更容易的方法呢?
我是MATLAB新手,我目前有一個腳本,每秒爲變量n生成不同的值。所以我最終需要將100個數據傳輸到excel。目前,我通過複製粘貼來手動執行此操作,但確實需要很長時間。如何在Matlab上生成的excel中自動記錄數據
我曾考慮過使用xlswrite命令,但它只是在第一列上寫入數據,並在生成新數據時一直覆蓋該列。
你能幫助我還是讓我更容易的方法呢?
如果您確實想在代碼運行時直接寫入excel,則可以使用activex。一些有據可查的示例代碼可以在this answer中找到。在中間的某個地方,您可以找到此代碼:
% select a 5x5 range, and fill it with some numeric values
sheet.Range('A1:E5').Value = num2cell(magic(5));
這裏您將其替換爲連續寫入數據的循環。
使用此解決方案時請小心。
使用連續寫入的簡單文本文件可能是更好的選擇,可以是fprintf
(使用相同的文件句柄,它將追加)或dlmwrite
(使用追加選項)。
感謝您的回覆我認爲現在我將使用dmlwrite,這似乎是最簡單的工作選項。 – hTeeML
在MATLAB中寫入csv文件很容易,並且不斷覆蓋文件末尾(而不是覆蓋)。這是一個足夠的解決方案? 你也可以跟蹤MATLAB中的所有數據,然後每次寫一個完整的xls文件。 –
謝謝,我發現了關於dmlwrite append命令,我將會使用它。 – hTeeML