什么是a=T(m:m,‘标签’);意思是

2个视图(过去30天)
汉娜
汉娜 2021年8月17日
评论: 汉娜2021年8月17日
对于下面代码中显示的每个迭代,我希望从第12行开始读取指定的文件;从第12行开始,我想每次迭代读一行。我总共有12次迭代,用m表示,即第一次迭代,我想从第12行往下读一行,第二次迭代,我想从第12行往下读第二行,依此类推,直到最后一次迭代,我从第12行往下读第12行。”“H_Ghor”和“H_Ghor”是我想要阅读的列的标题标签。
对于m=1:长度(月)%在12个月内循环12次
对于o=1:长度(方向)%南部和东部循环2次
对于t=1:长度(倾斜)%10个倾斜可能性循环10次
对于r=1:长度(行)%对3行循环3次
如果o==1%如果是south,则获取文件名中带有“S”的文件
tempFileName=sprintf('t%d_r%d_S-mon.txt',t,r);
埃尔塞夫o==2%如果是east,则获取文件名中带有“E”的文件
tempFileName=sprintf('t%d_r%d_E-mon.txt',t,r);
终止
File_from_Meteo=append(路径结果,tempFileName);%合并路径和文件名
T=可读性(文件来自,“头线”, 12);%表从第12行开始
如果t==1
子集=T(m:m,“胡戈霍”);
其他的
子集=T(m:m,“胡克霍”);
终止
Res_irr=表2阵列(子集);%给定m、o、r和t的内部收益率值
终止
终止
终止
终止
我的问题是:
这条线是什么
子集=T(m:m,“胡戈霍”);
确切的意思是,它符合我上面描述的吗?

公认的答案

史蒂芬
史蒂芬 2021年8月17日
编辑:史蒂芬 2021年8月17日
“a=T(m:m,‘label’)是什么意思?”
它指的是行 M 变量/列的类型 “标签” 返回一个表:
冒号不是必需的。代码的作者似乎也没有意识到他们可以使用大括号直接访问数据(从而避免返回需要多余的TABLE2ARRAY的表):
子集=T{m,“胡戈霍”};
%^^大括号!
APPEND的健壮、推荐和独立于操作系统的替代方法是使用FULLFILE。
“它符合我上面描述的吗?”
它似乎是这样做的。通常在循环之前导入数据更有效。
1评论
汉娜
汉娜 2021年8月17日
谢谢你的解释。我删除了冒号并实现了大括号,所以现在我的代码好多了D

登录以发表评论。

更多答案(0)

标签

社区寻宝

在MATLAB Central中查找宝藏,了解社区如何帮助您!

开始打猎吧!