1.4.3 数据属性
数据框作为R语言数据分析与可视化很常用的数据结构,常由多列不同数据属性的变量组成。在我们实现数据可视化时,很有必要先了解这些变量的属性。我们平时记录的实验数据所用的表(table)就是由一系列不同属性的变量组成的。Jiawei Han等人的Data mining: concepts and techniques[13]根据数据属性取值的集合类型,对数据属性进行了分成三类:类别型、序数型和数值型,如图1-4-1所示。Pang-Ning Ta等人的Introduction to Data Mining[14],将序数型和类别型数据统称为类别型(categorical)或者定性型(qualitative),将数值型(numeric)也称为定量型(quantitative)。
图1-4-1 不同数据类型
1.类别型
类别型属性(categorical attribute)是用于区分不同数据对象的符号或名称,而它们是没有顺序关系的,又包含多元类别和二元类别两种类型。对于多元类别,可以理解为购买服装时的不同服装名称,如衬衫、毛衣、T恤、夹克等;对于二元类别,可以理解为购买服装时的不同性别,只有男士和女士两种性别分类。类别型数据的可视化一般使用标尺类中的分类尺度。
2.序数型
序数型属性(ordinal attribute)的属性值是具有顺序关系,或者存在衡量属性值顺序关系的规则。比如常见的时序数据,就一般是按时间先后排序的;还有就是平时调查问卷中经常使用的5个喜欢程度:非常喜欢、比较喜欢、无所谓、不太喜欢、非常不喜欢。序数型数据的可视化一般使用标尺类中的顺序尺度和时间尺度两种类型。
序数型数据的排列方向有三种,分别是单向型(sequential),有公共零点的双向型(diverging),以及环状周期型(cyclic),如图1-4-2所示。
图1-4-2 不同数据结构的序数型
3.数值型
数值型属性(numeric attribute)使用定量方法表达属性值,如整数或者实数,包括区间型数值属性(interval-scaled attribute)和比值型数值属性(ratio-scaled attribute),如表1-4-3所示。区间型与比值型数值最大的区别就是有无基准点,通常为零点(internal zero-point)。
表1-4-3 包含不同数据属性的变量组合表[13]
比值型数值属性的数据一般拥有基准点,比如开氏温标(K)以绝对零度(0K=-273.15oC)为其零点,以及平时通常使用的数量、重量、高度和速度等。
而区间型数值属性的数据的起始值一般是在整个实数区间上取值,可进行差异运算,但不能进行比值运算。比如摄氏温标(°C)与华氏温标(°F)下的温度、日历中的年份、经度(longitude)与纬度(latitude),它们都没有真正的零点。在日历中,0年并不对应时间的开始,但0°C并不代表没有温度。所以可以说10°C比5°C温度高(差异运算),但是不能说10°C是5°C的2倍(比值运算)。
我们也可以用值的个数区分数据类型,可以分为离散型和连续型[14]。离散型属性具有有限个值或者无限个值,这样的属性可以是分类的,也可以是数值型的。其中二元属性(binary attribute)是离散型属性的一种特殊情况,并只接受两个值,比如True/False(真/假)、Yes/No(是/否)、Male/Female(男/女),以及0/1。通常二元属性使用布尔变量表示,或者只取0和1两个值的整数变量表示。连续型属性是取实数值的属性,通常使用浮点数变量表示。理论上讲,基于数据集合类型划分的数据类型(类别型、序数型和数值型)可以与基于属性值个数的任意类型(离散型和连续型)组合,从而不同的数据可能有不同的数据属性组合。