# 分类变量 (Categorical Variable)
分类变量 (Categorical Variable),也称为 定性变量 (Qualitative Variable) 或 属性变量 (Attribute Variable),是{{{统计学}}}和{{{数据分析}}}中的一个基本概念。它描述的是个体的某种类别、属性或特征,其值是有限个互斥的类别或标签,而不是可以通过测量得到的数值。
与{{{定量变量}}} (Quantitative Variable) 不同,分类变量的值不具备数学运算的意义。例如,不能将“男性”和“女性”相加,也不能计算“血型A”和“血型B”的平均值。分类变量将观测对象分门别类,是进行分组比较、探索关系和构建许多统计模型的基础。
## 分类变量的类型
分类变量根据其类别之间是否存在内在的顺序,可以进一步细分为两种主要类型:名义变量 和 定序变量。
### 1. 名义变量 (Nominal Variable)
名义变量 是纯粹用于分类的变量,其类别之间没有高低、大小或好坏之分的内在顺序。任何对名义变量的类别赋予的数字都只是一个代号,不具有数值上的意义。
* 特点:类别之间是平等的,只有“不同”之分,没有“顺序”之分。 * 示例: * 性别:男、女 * 血型:A型、B型、AB型、O型 * 婚姻状况:未婚、已婚、离异、丧偶 * 国籍:中国、美国、日本、德国等 * 产品的颜色:红色、蓝色、白色
对于名义变量,我们通常关心的是每个类别的{{{频率}}} (Frequency) 和{{{比例}}} (Proportion)。
### 2. 定序变量 (Ordinal Variable)
定序变量 的类别之间存在一个明确的、内在的等级或顺序关系。我们可以对这些类别进行排序,但类别之间的差距不一定是均等的或可量化的。
* 特点:类别之间不仅有“不同”之分,还有明确的“顺序”或“等级”之分,但不能进行加减运算。 * 示例: * 教育水平:小学、初中、高中、学士、硕士、博士(顺序明确,但不能说“硕士 - 学士”等于“高中 - 初中”) * 产品评级:差、中、好、优秀 * 李克特量表 (Likert Scale):非常不同意、不同意、中立、同意、非常同意 * 社会经济地位:低、中、高
虽然定序变量有顺序,但在进行严格的统计分析时,直接将其视为普通的数字(如将“差、中、好”记为1, 2, 3)需要非常谨慎,因为这隐含了等级之间距离相等的假设。
## 分类变量的编码
大多数{{{统计模型}}}(如{{{回归分析}}})要求输入为数值型{{{数据}}}。因此,在分析之前,必须将分类变量转换为数值形式,这个过程称为 编码 (Encoding)。
### 虚拟变量编码 (Dummy Coding)
这是处理分类变量最常用和最严谨的方法,尤其是在回归模型中。其核心思想是创建一系列新的二元(0 或 1)变量,这些变量被称为{{{虚拟变量}}} (Dummy Variables) 或指示变量 (Indicator Variables)。
编码规则:如果一个分类变量有 $k$ 个类别,我们通常会创建 $k-1$ 个虚拟变量。
1. 选择一个基准类别 (Baseline Category):从 $k$ 个类别中选择一个作为参照组。这个类别在所有新的虚拟变量中的取值都为0。 2. 为其余类别创建虚拟变量:为剩下的 $k-1$ 个类别分别创建一个虚拟变量。对于某个观测值,如果它属于这个虚拟变量所代表的类别,则该虚拟变量取值为1,否则取值为0。
示例:假设有一个“季节”变量,包含四个类别:春、夏、秋、冬 ($k=4$)。
* 我们选择“春”作为基准类别。 * 我们创建 $k-1=3$ 个虚拟变量:$D_{夏}$, $D_{秋}$, $D_{冬}$。 * 编码方式如下表所示:
| 原始类别 | $D_{夏}$ | $D_{秋}$ | $D_{冬}$ | | :------- | :------- | :------- | :------- | | 春 (基准) | 0 | 0 | 0 | | 夏 | 1 | 0 | 0 | | 秋 | 0 | 1 | 0 | | 冬 | 0 | 0 | 1 |
为什么是 $k-1$ 个? 如果创建 $k$ 个虚拟变量,会导致一个被称为 {{{虚拟变量陷阱}}} (Dummy Variable Trap) 的问题。在这种情况下,这 $k$ 个虚拟变量的和恒等于1(因为每个观测值必然属于且仅属于其中一个类别),这会导致变量之间出现完全的{{{多重共线性}}} (Perfect Multicollinearity)。多重共线性会使回归模型的{{{系数}}}无法被唯一确定,导致模型求解失败。通过省略一个基准类别,我们打破了这种线性依赖关系。
### 其他编码方法
* 标签编码 (Label Encoding):将每个类别赋予一个唯一的整数(如1, 2, 3, $...$)。这种方法很简单,但主要问题在于它会错误地为名义变量引入顺序关系,并假设定序变量的类别间距相等。它在某些{{{机器学习}}}算法(如决策树和随机森林)中可以使用,因为这些模型不对数值大小进行线性假设。
## 在统计分析中的应用
### 描述性统计 对于分类变量,主要的描述性统计量是: * 频数表 (Frequency Table):展示每个类别出现的次数。 * 相对频率 (Relative Frequency):每个类别出现的次数占总观测次数的比例。 * 可视化:通常使用 条形图 (Bar Chart) 或 饼图 (Pie Chart) 来直观展示其分布。
### 推断性统计 分类变量在推断统计中扮演着核心角色: * {{{卡方检验}}} (Chi-squared Test):用于检验两个分类变量之间是否存在关联性。例如,检验“性别”和“是否吸烟”这两个分类变量是否独立。 * {{{t检验}}} (t-test) 和 {{{方差分析}}} (ANOVA):用于比较一个{{{定量变量}}}在某个分类变量的不同组别之间的{{{均值}}}是否存在显著差异。例如,使用方差分析检验不同“教育水平”(分类变量)的群体的“平均收入”(定量变量)是否不同。 * 回归分析 (Regression Analysis):分类变量常作为{{{自变量}}}(预测变量)进入模型。通过虚拟变量编码,我们可以量化不同类别对{{{因变量}}}的影响。例如,在房价预测模型中,引入“房屋类型”(如公寓、独栋别墅)作为虚拟变量,其{{{系数}}}可以解释为:与基准类别(如公寓)相比,某一房屋类型(如独栋别墅)对房价的平均影响。