前面章节中,我们加载了SciKit-Learn自带的数据集digits
,可以通过以下语句查看数据集中包含哪些主要内容:
输出
data
样本数据target
目标值target_names
目标名称images
图像格式(二维)的样本数据DESCR
描述信息
查看数据集的描述:
输出
这是一个手写数字的数据集。
类似地,你也可以查看其它内容:
注意:如果使用
read_csv()
导入数据集,数据集已经分割好,导入的数据集中可能没有描述字段,但是你可以使用head()
或tail()
来检查数据。在这种情况下,最好仔细查看数据描述文件夹!
接下来,我们进一步了解数据集中的数据。
可以看到,数据集中的数据都是numpy数组的格式,可以查看这些数组的数据类型,形状,长度等信息。
可以看出,digits.data
中,有1797个样本,每个样本有64个特征值(实际上是像素灰度值)。
digits.target
中,包含了上面样本数据对应的目标值(样本标签),同样有1797个目标值,但10个唯一值,即0-9。换句话说,所有1797个目标值都由0到9之间的数字组成,这意味着模型要识别的是从0到9的数字。
digits.target_names
包含了样本标签的名称: 0~9。
最后,可以看到digits.images
数组包含3个维度: 有1797个实例,大小为8×8像素。digits.images
数据与digits.data
内容应该相同,只是格式不同。可以通过以下方式验证两者内容是否相同:
把digits.images
改变形状为(1797, 64)
,与digits.data
比较,两者相等。numpy方法all()
可以检测所有数组元素的值是否为True。