Python的虚拟变量及因子型变量构建

78 篇文章 9 订阅

什么是虚拟变量和因子型数据

虚拟变量,
虚拟变量(DummyVariables)又称虚设变量、名义变量或哑变量,用以反映质的属性的一个人工变量,是量化了的自变量,通常取值为0或1。引入哑变量可使线形回归模型变得更复杂,但对问题描述更简明,一个方程能达到两个方程的作用,而且接近现实。

哑变量(Dummy Variable),又称虚设变量、名义变量或哑变量,是量化了的质变量,通常取值为0或1。引入哑变量可使线形回归模型变得更复杂,但对问题描述更简明,一个方程能达到俩个方程的作用,而且接近现实。

举例说明,我想研究收入和学历的关系,那么学历包含:小学、初中、高中、本科、研究生、博士等。那学历这个变量包含的类容,咱们可以称为虚拟变量,用1,2,3,4,5,6来进行表示。

那虚拟变量、哑变量、虚设变量、名义变量等其实是一个说法。

在R语言中,以上的1,2,3,4,5,6称为层次水平因子factor,而学历就叫做因子型变量。

注意:虚拟变量的值必须是大于等于2个,否则没有意义。

Python虚拟变量和因子型数据转换

同样,数据样本中有一类特征属性彼此是平行的关系,不能简单的以数值或字符赋予其含义,也不参加大小的运算。例如 性别、学历、评级等,面对这类问题,可以通过构建哑变量来解决。以疾病的病种类型为例进行如下所示:

例如含有三个因子的特征可以将其转化为三列每列都只有0-1构成的向量。这样的向量就是哑变量。下面来看一下再python中的实现

import pandas as pd
testdata = pd.read_csv("C://Users//TD//Desktop//1.csv")
from sklearn import preprocessing
testdata["疾病名称"].head()
0    败血症(成人)
1    败血症(成人)
2    脑出血和脑梗死
3    脑出血和脑梗死
4    脑出血和脑梗死
Name: 疾病名称, dtype: object

factor=pd.get_dummies(testdata["疾病名称"],prefix='疾病名称')
factor
   疾病名称_创伤性颅脑损伤  疾病名称_前列腺增生  ...  疾病名称_败血症(成人)  疾病名称_高血压病(成人)
0               0           0  ...             1              0
1               0           0  ...             1              0
2               0           0  ...             0              0

于是就将上述的内容直接转化为哑变量,带入Python模型中进行分析。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值