特征工程
将数据转换为能更好地表示潜在问题地特征, 从而提高机器学习的性能。
定量数据和定性数据
定量数据本质上是数值,应该是衡量某样东西的数量。
定性数据本质上是类别,应该是衡量某样东西的性质。
有时数据可以同时是定量和定性的。例如餐厅的评分(1~5星)虽然是数,但是这个数也可以代表类别。但是如果星级是浮点型, 那么该属性就是定量。
以旧金山做不同工作的薪资,来分析。
数据缺失度查看方法:info() 和 isnull().sum()
describe()函数可以查看一些定量数据的描述性统计。但是一些定性数据是整数表示的变量,也会被被统计,这种时候需要做一些处理, 另外一些数据用string表示,比如美元$1, 对这种格式用map(lambda x: x.replace('$', ''))
在以上的分类上,进行更一步的细分,分为定类等级,定序等级,定距等级,定比等级。
定类等级
是数据的第一个等级,其结构最弱。这个等级的数据只按名称分类。例如血型(A, B, O和AB型),动物物种和人民等。
在这个等级上,不能执行任何定量数学操作,例如加法和减法。可以通过value_counts()进行统计个数。
定序等级
定序等级在定类等级上进一步进行探索的方法。添加了额外属性。
1. 定序等级可以自然排序
2. 可以进行比较
例子包括:考试成绩(A,B,C,D,F)
可以执行的数学操作:中位数和百分数
定距等级
在定类和定序等级的基础上更进一步, 定类和定序等级都是定性数据。即使其内容是数,也不代表真实数量。在定距等级,摆脱了这个限制,开始定量数据。定距等级,不仅可以排序,而且值之间的差异也是有意义的。可以进行加减.
定比等级
定比等级处理的也是定量数据。这里不仅继承了定距等级等级的加减运算,而且有一个绝对零点的概念,可以做乘除运算。
100元人民币是50元的俩倍
反例:
温度是属于定距等级,而不是定比等级,因为100度比50度高俩倍的说法是没有意义的, 并不合理。因为摄氏度和华氏度都没有真正的零点。
回到旧金山的工资数据,可以看到Biweekly High Rate列处于定比等级,因而可以进行新的观察。先看一下最高工资: