【问题标题】:how to import data from libreoffice into Matlab如何将 libreoffice 中的数据导入 Matlab
【发布时间】:2013-09-27 06:48:32
【问题描述】:

我在 Lib-re Office 3.5 中有一个文件,其中仅包含 1 行但包含数千个数据。如何在 Matlab 中导入? 我尝试使文件成为 .DAT 扩展名,但出现以下错误: ">> 文件名='z.dat';

M=csvread(文件名) 使用 csvread 时出错(第 37 行) 找不到文件。”

【问题讨论】:

  • 您在正确的目录中吗?如果您在命令窗口中键入ls,您会在结果中看到“z.dat”吗?另请注意,文件名区分大小写。
  • 正如我在您的另一个问题 (stackoverflow.com/questions/19020238/…) 中已经告诉您的,将您的电子表格保存为 csv 文件并使用 csvread 导入您的数据。确保 *.csv 文件存在并且 MATLAB 可以找到它。
  • 不,我做 ls 时看不到 z.dat..
  • 我在 >> cd /usr/local/MATLAB/R2011b/bin 目录..

标签: matlab matlab-guide matlab-compiler


【解决方案1】:

解决方案是保存在 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)

那么一切都很好..:)

【讨论】:

    【解决方案2】:

    虽然csvread 方法适用于.dat 文件,但最好按照其他人的建议将文件保存为.csv 格式。我的回答与您在代码中遇到的错误有关,即“找不到文件”错误。

    最好提及您要读取的文件的完整路径。因此,如果您的文件名为z.csv 存在于/usr/local/MATLAB/R2011b/bin,那么您应该编写以下代码:

    filename = '/usr/local/MATLAB/R2011b/bin/z.csv';
    M = csvread(filename);
    

    这将自动确保您访问正确的文件,即使您可能不在 MATLAB 中的正确文件夹中。即使您没有通过键入ls 看到您的文件,您的代码仍然可以访问它。如果您更改路径,请确保更新路径。

    【讨论】:

      【解决方案3】:

      看看fread。此函数可以根据需要加载 .dat 或 .bin。请务必传递您要加载的类型。像uint8=>uint8 会读取 uint8 中的值并保存在 matlab 中的 uint8 下。您无需指定=>uint8,但它会提高性能。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-12-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多