Matlab拆分表格中的文本列

Matlab拆分表格中的文本列,matlab,split,Matlab,Split,我在MatLab中有一个带有文本列的表对象。此文本列是一个“标记”,包含分隔标记的两个下划线 我想用标记的第二个元素创建一个列。我用了strsplit,但没用。我还尝试了regexp,但它给了我一个包含126个cells对象的cell对象,我不知道如何提取每个cell的第二个元素 有什么建议吗 例如: a = {'a_b'; 'a_c';'a_n';'a_t'} t = table(a) 我只需要一个第二个元素的向量。 谢谢。怎么样 t=[t rowfun(@(x) x{1}(3),t)]

我在MatLab中有一个带有文本列的表对象。此文本列是一个“标记”,包含分隔标记的两个下划线

我想用标记的第二个元素创建一个列。我用了strsplit,但没用。我还尝试了regexp,但它给了我一个包含126个cells对象的cell对象,我不知道如何提取每个cell的第二个元素

有什么建议吗

例如:

a = {'a_b'; 'a_c';'a_n';'a_t'}
t = table(a)
我只需要一个第二个元素的向量。 谢谢。

怎么样

t=[t rowfun(@(x) x{1}(3),t)]
其中1为列,3为所需元素。对于未定义长度的字符串部分,它变得有点棘手

t=[t rowfun(@(X) X{1}(strfind(X{1},'_')+1:end),t,'OutputFormat','cell')];
strfind()获取“\”元素,因此(find+1:end)是字符串的其余部分。由于它们可以具有不同的长度,所以所有内容都必须作为输出添加到单元格中,然后添加到表中。如果列发生更改,您必须同时采用{1}

中的代码,如何

t=[t rowfun(@(x) x{1}(3),t)]
其中1为列,3为所需元素。对于未定义长度的字符串部分,它变得有点棘手

t=[t rowfun(@(X) X{1}(strfind(X{1},'_')+1:end),t,'OutputFormat','cell')];

strfind()获取“\”元素,因此(find+1:end)是字符串的其余部分。由于它们可以具有不同的长度,所以所有内容都必须作为输出添加到单元格中,然后添加到表中。如果列发生更改,您必须同时采用{1}

中的代码,我不知道该函数,谢谢!但是它只适用于'a_x'类型,很抱歉,我没有提到我有几行不是那种类型,这就是我尝试使用strsplit的原因。对那些特殊情况有什么建议吗?示例:“aa_3rf”、“caa_12a4f”我不知道这个函数,谢谢!但是它只适用于'a_x'类型,很抱歉,我没有提到我有几行不是那种类型,这就是我尝试使用strsplit的原因。对那些特殊情况有什么建议吗?示例:“aa_3rf”、“caa_12a4f”