我在 Lib-re Office 3.5 中有一个文件,其中仅包含 1 行但包含数千个数据。如何在 Matlab 中导入?我尝试将文件变为 .DAT 扩展名,但出现以下错误:“>> filename='z.dat';
M=csvread(filename) 使用 csvread 时出错(第 37 行)找不到文件。”
我在 Lib-re Office 3.5 中有一个文件,其中仅包含 1 行但包含数千个数据。如何在 Matlab 中导入?我尝试将文件变为 .DAT 扩展名,但出现以下错误:“>> filename='z.dat';
M=csvread(filename) 使用 csvread 时出错(第 37 行)找不到文件。”
解决方案是保存在 csv 文件中。但我的问题是我无法看到我的数据,请记住我对 Matlab 很陌生..因此使用命令它可以完美运行..
filename='z';
M=csvread(filename)
#i obtain my list of data,, now i have to eliminate all zeros. hence,
M=M(M~=0)
那么一切都很好..:)
尽管该方法csvread
适用于.dat
文件,但最好.csv
按照其他人的建议以格式保存文件。我的回答与您在代码中遇到的错误有关,即“找不到文件”错误。
最好提及您要读取的文件的完整路径。因此,如果您的文件名为z.csv
存在,/usr/local/MATLAB/R2011b/bin
那么您应该编写以下代码:
filename = '/usr/local/MATLAB/R2011b/bin/z.csv';
M = csvread(filename);
这将自动确保您访问正确的文件,即使您可能不在 MATLAB 中的正确文件夹中。即使您没有通过键入ls
代码看到您的文件,仍然可以访问它。如果您更改路径,请确保更新路径。
看看fread。此函数可以根据需要加载 .dat 或 .bin。请务必传递您要加载的类型。Likeuint8=>uint8
将读取 uint8 中的值并保存在 matlab 中的 uint8 下。您不需要指定=>uint8
,但它会提高性能。