我有一个表格(T),如下所示:
>> Name = {'John';'Mary';'Martha'};
Age = [10.8;15.11;20.22];
T=table(Name,Age);
>> T
T =
3×2 table
Name Age
________ _____
'John' 10.8
'Mary' 15.11
'Martha' 20.22
如果我使用的话,将Age列转换为矩阵可以很好地工作:
cell2mat(table2cell(T(:,2)))
但是如果我使用,则无法使用
cell2mat(table2cell(T.Age))
并抛出以下错误:
>> cell2mat(table2cell(T.Age))
Undefined function 'getVars' for input
arguments of type 'double'.
Error in table2cell (line 15)
t_vars = getVars(t);
在将该列转换为矩阵时,是否可以使用列名 T.Age 而不是使用 T(:,2)?
答案 0 :(得分:3)
摘自MathWorks网站上的Access Data in a Table文档
使用括号可以选择表中数据的子集并保留表容器。
同时
点索引从一个表变量中提取数据。结果是与提取变量具有相同数据类型的数组。您可以在圆点索引后面加上括号,以指定要从变量中提取的行的子集。
因此,如果您使用n=input()
y=n.split()
for x in y:
a=([int(x)])
print(a)
访问数据,则结果应该已经是矩阵,即您无需使用python .\input_into_list.py
1 2 3
[3]
或T.Age
进行任何转换。