【发布时间】:2019-09-10 00:46:10
【问题描述】:
我正在尝试读取一个 CSV 文件,该文件的多列数据不适用于我尝试运行的程序。我只想从包含“CX”的列中读取表格。有没有办法在表格中做到这一点?实际上,我正在尝试使用正则表达式对表进行索引。
【问题讨论】:
-
您是否尝试根据列的内容或列的名称进行过滤?你能分享一个例子吗?
标签: matlab matlab-table
我正在尝试读取一个 CSV 文件,该文件的多列数据不适用于我尝试运行的程序。我只想从包含“CX”的列中读取表格。有没有办法在表格中做到这一点?实际上,我正在尝试使用正则表达式对表进行索引。
【问题讨论】:
标签: matlab matlab-table
假设您已经将 CSV 加载为表格,并希望根据列变量名称进行选择,您可以使用contains:
CX_1 = rand(10,1);
CX_2 = rand(10,1);
CY_1 = rand(10,1);
T = table(CX_1, CY_1, CX_2)
VarNames = T.Properties.VariableNames;
VarsToKeep = contains(VarNames, 'CX');
T_cx = T(:, VarsToKeep)
如果要匹配正则表达式,也可以使用如下:
VarsToKeep = ~cellfun(@isempty, regexp(VarNames, 'CX'));
T_cx = T(:, VarsToKeep)
【讨论】: