这似乎是一个非常简单的问题,但我似乎无法解决这个问题。基本上我有很多单元格:Face1,Face2,Scene1,Scene2。每个单元格包含一个值,例如,Face1 = 15,Face2 = 23,Scene1 = 46,Scene2 = 9
现在我想将所有这些单元格组合成一个名为D的单个单元格,类似于D = {Face1,Face2,Scene1,Scene2}。但是,当我这样做时,我得到D = {15,23,46,9}。这不是我想要的。我想保留每个单元格的身份,所以当我调用D {1,1}时我会得到Face1,当我调用Face1时,我会得到15。
有人有建议吗?
谢谢!
答案 0 :(得分:2)
您是否考虑过使用结构?试试这个:
D.face1 = 15
D.face2 = 23
你也可以这样做:
D.face(1) = 15
如果不能为你做这件事,请告诉我。
答案 1 :(得分:1)
可能不是最好的“解决方案”,但您可以使用eval执行某些操作。
首先,创建变量。
Face1 = 15, Face2 = 23, Scene1 = 46, Scene2 = 9
然后,创建包含变量名称的单元格数组,作为字符串:
D = {'Face1', 'Face2', 'Scene1', 'Scene2'}
您可以像这样查询其值:
>> eval(D{1,1})
Face1 =
15
答案 2 :(得分:1)
评论太长了:
看起来你正在使用数组,而不是单元格。也就是说,我认为您的代码如下所示:
Face1 = 15
Face2 = 23
Scene1 = 46
Scene2 = 9
D = {Face1 Face2 Scene1 Scene2}
哪个会像你描述的那样行事。现在D{1}
会返回15
。
如果您使用“单元格”,您的代码将如下所示:
Face1 = {15}
Face2 = {23}
Scene1 = {46}
Scene2 = {9}
D = {Face1 Face2 Scene1 Scene2}
这可能不是你想要的,但它是细胞解决方案。现在D{1}
返回{15}
,D{1}{1}
返回15
。
如果要保留复合数据D
中的名称,则结构可能是最简单的。请参阅Fletch刚发布的答案。