微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Octave GNU - 在 cd

如何解决Octave GNU - 在 cd

我已经为此问题苦苦挣扎了几天,我决定看看是否有更有经验的人可以帮助我。我目前正在开发一个数据分析程序,旨在加载和操作各种数据文件我有 3 个文件夹,每个文件夹有 1 种类型的 30 个文件,分别由trial_001...trial_30、trial_n3d_001...trial_n3d_030 和 trial_com_n3d_001...trial_com_n3d_030 表示。这些文件很相似,但在数据类型以及数据列和行的总数方面存在差异。目前,我用于加载数据的代码部分如下所示:

cd = dir('*.csv');
n = length(cd); 
data = cell(1,n); 
for files = 1 : n %For the first file up to the total amount of files
  data(files) = csvread(cd(files).name); %read in csv files
endfor
data = cell2mat(data); %Create single large dataset

这成功地循环了我当前的工作目录并获取了所有文件,然后将它们输入到一个预期的大型数据集中。我能够执行我所有的计算。问题是我似乎无法使用此方法指定子文件夹,而仅当我直接从其中一个文件夹手动加载时才有效。我需要该程序在多台计算机上运行,​​如果我不必每次都在代码中设置加载路径,而只需使用我在文件浏览器中启动八度音程时手动选择的路径,而是指定通用文件名称,我会更喜欢。

所以我的问题是,我如何从包含所有三个文件夹及其各自文件的前一个文件夹中准确地执行当前正在执行的操作,并在我的代码中的不同点搜索这些文件夹中的每一个?我希望我的数据变量充当工作数据集,并在不同时间加载这三种类型的文件中的每一种并执行不同的计算(在从每个文件夹加载所有文件并执行计算后有效地重置该数据变量)。我尝试过 addpath、genpath 等,以及操作公共目录和创建代表每个文件夹位置的变量,但我似乎无法让它工作。有什么建议吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。