52matlab技术网站,matlab教程,matlab安装教程,matlab下载

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4097|回复: 5
打印 上一主题 下一主题

如何通过A变量的值B来访问B变量的内容

[复制链接]

3

主题

7

帖子

37

积分

新手上路

Rank: 1

积分
37
跳转到指定楼层
楼主
发表于 2015-6-13 15:28:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
大家好  请教个问题  我有一个name的cell,里面包含很多个table的名字,我现在想通过name来访问table内的列  怎么做啊?  

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

3

主题

7

帖子

37

积分

新手上路

Rank: 1

积分
37
沙发
 楼主| 发表于 2015-6-13 15:30:04 | 只看该作者
数据文件位置为链接:http://pan.baidu.com/s/1hqB0EC8 密码:j0eh
回复 支持 反对

使用道具 举报

13

主题

33

帖子

318

积分

版主

Rank: 7Rank: 7Rank: 7

积分
318
板凳
发表于 2015-6-13 16:08:32 | 只看该作者
你要通过name来访问的话比较麻烦一点,比如你你取name{1,1}就可以得到SH600000,但是这是个字符串,所以你要取SH600000某一个元素不能直接用SH600000{m,n},而是eval([name{i,j},'{',num2str(m),',',num2str(n),'}']),比如你要操作SH600000{2,3},你可以输入eval([name{1,1},'{',num2str(2),',',num2str(3),'}']).
千娇百媚栏杆下,不敌东风一转身~~~
回复 支持 反对

使用道具 举报

3

主题

7

帖子

37

积分

新手上路

Rank: 1

积分
37
地板
 楼主| 发表于 2015-6-13 16:24:51 来自手机 | 只看该作者
那么我要访问比如SH600000.VarName1列的数据怎么弄呢?
回复 支持 反对

使用道具 举报

13

主题

33

帖子

318

积分

版主

Rank: 7Rank: 7Rank: 7

积分
318
5#
发表于 2015-6-13 16:39:21 | 只看该作者
eval([name{1,1},'{:,', num2str(1),'}'])这样就可以了
千娇百媚栏杆下,不敌东风一转身~~~
回复 支持 反对

使用道具 举报

3

主题

7

帖子

37

积分

新手上路

Rank: 1

积分
37
6#
 楼主| 发表于 2015-6-14 18:11:07 | 只看该作者
[f g]=size(name);
for i=1:f
   i_close=eval([name{1,1},'{:,', num2str(5),'}']);
   [short,long]=movavg(i_close,5,10);

Short=num2cell(short);
SHORT=cell2table(Short);
Long=num2cell(long);
LONG=cell2table(Long);
name{i,1}=[eval(name{i,1}),SHORT,LONG]
  save m
end

大神, 我要计算数据移动平均值  然后把移动平均值的列加到原来的表中,可是提示
错误使用 MA5 (line 3)
所有输入参数都必须为表。
代码错在哪里啊?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|52matlab技术网站 ( 粤ICP备14005920号-5 )

GMT+8, 2024-4-26 14:26 , Processed in 0.082850 second(s), 19 queries .

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表