由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 菜鸟问个Matlab问题
相关主题
GUI里打开.fig文件用imagesc显示图像 (转载)[合集] 问个MatLab小问题 (转载)
有什么语言能取代python作数据处理? R?[合集] 正经问个代替Matlab的问题。 (转载)
如何在matlab里面load字符串问个matlab的表达式
matlab struct question问个matlab socket问题
matlab textscan data loading limit问个技术问题: c++ 调试怎么显示二维数组?比如Visual Studio
问个G的GFS 和 F的haystack架构问题吗问个有关C++ map的问题
问个matlab import data的简单问题 (转载)问个c++语言扩展的问题 (转载)
问个matlab的问题c++ 能够一次打开多个文本文件读数据么?
相关话题的讨论汇总
话题: sub话题: m1话题: dir话题: cfg话题: size
进入Programming版参与讨论
1 (共1页)
n****r
发帖数: 5801
1
就是觉得很奇怪,图方便在这儿问啦
具体是这样的,某个路径下的数据M1-M15共15个数据,我想用程序自动处理数据所以涉
及到读数据和存数据的问题。
读数据第一步我用了这样的方式:
sub = dir('M*')
这样size 为15, sub(1).name == M1
为的是不想把别的无关数据读进。
但是程序对一个数据处理完之后,sub的size 自动变化为 17了,
sub(2).name == ..
sub(3).name == M1
我想应该是 sub = dir('M*') 自动变回 sub = dir(pwd)了
我想在运行完 sub = dir('M*') 之后,存下sub: save sub sub,然后 clear, 重新
load sub,这样sub 会保持 size 为15,sub(1).name == M1。
可是即使这样,程序对一个数据处理完之后,同样的事又发生了!sub的size 又自动变
化为 17,sub(2).name == ..
很想不通为什么会这样?经过 save,clear, load了不是把变量固定了么?为什么还会
自动变化呢?
S*********g
发帖数: 5298
2
你自己有code把sub给改变了

【在 n****r 的大作中提到】
: 就是觉得很奇怪,图方便在这儿问啦
: 具体是这样的,某个路径下的数据M1-M15共15个数据,我想用程序自动处理数据所以涉
: 及到读数据和存数据的问题。
: 读数据第一步我用了这样的方式:
: sub = dir('M*')
: 这样size 为15, sub(1).name == M1
: 为的是不想把别的无关数据读进。
: 但是程序对一个数据处理完之后,sub的size 自动变化为 17了,
: sub(2).name == ..
: sub(3).name == M1

n****r
发帖数: 5801
3

在哪里改变了的呢?我怎么也看不出来。。。
这是我的code:
sub = dir('M*')
save sub sub
clear
load sub
for ii= 1:size(sub,1)
cfg = [];
cd(sub(ii).name)
[run data processing here]
cd ..
end

【在 S*********g 的大作中提到】
: 你自己有code把sub给改变了
l********a
发帖数: 1154
4
干脆自己构造文件名算了
for i = 1:15
fname = strcat('M',num2str(i));
% read file content here
% ...
end
n****r
发帖数: 5801
5
赫赫,我是为了方便叙述,把问题简化了。实际的文件名没这么规则呀
手动就是麻烦点,倒不是问题。就是很奇怪为什么sub自己会变化

【在 l********a 的大作中提到】
: 干脆自己构造文件名算了
: for i = 1:15
: fname = strcat('M',num2str(i));
: % read file content here
: % ...
: end

s*w
发帖数: 729
6
土了吧, dir 返回的文件包括 . and ..
你还挨个进去, 再用 cd ..?

【在 n****r 的大作中提到】
: 就是觉得很奇怪,图方便在这儿问啦
: 具体是这样的,某个路径下的数据M1-M15共15个数据,我想用程序自动处理数据所以涉
: 及到读数据和存数据的问题。
: 读数据第一步我用了这样的方式:
: sub = dir('M*')
: 这样size 为15, sub(1).name == M1
: 为的是不想把别的无关数据读进。
: 但是程序对一个数据处理完之后,sub的size 自动变化为 17了,
: sub(2).name == ..
: sub(3).name == M1

n****r
发帖数: 5801
7
I know if just dir in my case, it would be . .. M1-M15, that is, the size
is 17
However, if dir M*, it's M1-M15, the size is 15
the data in fact is under M1-M15, for example: M1/data, M2/data

【在 s*w 的大作中提到】
: 土了吧, dir 返回的文件包括 . and ..
: 你还挨个进去, 再用 cd ..?

t****t
发帖数: 6806
8
you will have to show the whole code...

【在 n****r 的大作中提到】
: I know if just dir in my case, it would be . .. M1-M15, that is, the size
: is 17
: However, if dir M*, it's M1-M15, the size is 15
: the data in fact is under M1-M15, for example: M1/data, M2/data

n****r
发帖数: 5801
9

In fact the code in the loop just data processing...
the whole codes is below:
sub = dir('M*')
save sub sub
clear
load sub
for ii= 1:size(sub,1)
cfg = [];
cd(sub(ii).name)
cfg.data = 'data';
cfg.trialdef.triallength = 2;
cfg = ft_definetrial(cfg);
predelta = ft_preprocessing(cfg);
save predelta predelta
cd ..
end

【在 t****t 的大作中提到】
: you will have to show the whole code...
t****t
发帖数: 6806
10
if this is really your code, it shouldn't happen, unless:
your "sub" is global and something in the functions changed it.

【在 n****r 的大作中提到】
:
: In fact the code in the loop just data processing...
: the whole codes is below:
: sub = dir('M*')
: save sub sub
: clear
: load sub
: for ii= 1:size(sub,1)
: cfg = [];
: cd(sub(ii).name)

1 (共1页)
进入Programming版参与讨论
相关主题
c++ 能够一次打开多个文本文件读数据么?matlab textscan data loading limit
Python 可不可以一次读数据给一个 web service 后,然后一直用这个数据问个G的GFS 和 F的haystack架构问题吗
怎么才能在Unix里连续跑10个c写的程序问个matlab import data的简单问题 (转载)
c++类未完成初始化,如何引用this?问个matlab的问题
GUI里打开.fig文件用imagesc显示图像 (转载)[合集] 问个MatLab小问题 (转载)
有什么语言能取代python作数据处理? R?[合集] 正经问个代替Matlab的问题。 (转载)
如何在matlab里面load字符串问个matlab的表达式
matlab struct question问个matlab socket问题
相关话题的讨论汇总
话题: sub话题: m1话题: dir话题: cfg话题: size