eval中的Matlab索引
我想使用eval更改数据集中的值。在某种程度上,每秒的值都会更改为之前的值 简短示例:eval中的Matlab索引,matlab,indexing,eval,Matlab,Indexing,Eval,我想使用eval更改数据集中的值。在某种程度上,每秒的值都会更改为之前的值 简短示例: A = magic(6) ds = mat2dataset(A) % original dataset ds.A1(2:2:end) = ds.A1(1:2:end) % dataset after change 那是我想做的事。现在我需要使用前面在函数中分配的变量字母和数字 letter = 'A' number = '1' eval([strcat('ds.', letter, number)])
A = magic(6)
ds = mat2dataset(A) % original dataset
ds.A1(2:2:end) = ds.A1(1:2:end) % dataset after change
那是我想做的事。现在我需要使用前面在函数中分配的变量字母和数字
letter = 'A'
number = '1'
eval([strcat('ds.', letter, number)]) % now gives me all values.
这正是我想要索引(1:2:end)的地方,以获得索引值
你们中有人知道如何在eval函数中建立索引吗?如果你有其他的方法,我也更喜欢
非常感谢 1)不要使用eval
实现动态字段名:
h=ds.([letter, number])
2) 双重索引是不可能的,您需要两行来实现它
h(1:2:end)