Matlab:使用categorical将表变量中的文本转换为分类数组
在Matlab中,我们经常需要将文本数据转换为数值类型进行分析。有时候,我们需要将表中的某一列文本数据转换为分类数组,以便于后续处理。本文将介绍如何使用Matlab内置函数categorical来实现这个过程。
首先,我们需要创建一个包含文本数据的表。假设我们有以下表:
T = table({'Male'; 'Female'; 'Male'},...
[25; 32; 28],...
{'NY'; 'CA'; 'TX'},...
'VariableNames',{'Gender','Age','State'})
这是一个三列的表,每一列的数据类型分别为文本、数值和文本。
接下来,我们需要将Gender列中的文本数据转换为分类数组。可以使用以下代码实现:
T.Gender = categorical(T.Gender)
这一行代码将Gender列转换为分类数组,并将结果存储回表中。需要注意的是,在进行分类转换时,Matlab会自动为每一个不同的文本值分配一个唯一的数值标签。可以使用以下代码查看转换后的结果:
unique(T.Gender)
输出为:
Male
Female
这里的输出结果显示出了所有不同的文本值,而且它们已经被转换为相应的分类类型。
需要注意的是,使用categorical函数转换变量时,Ma