检查不同类型的数据
数据只是收集的信息的另一种说法。 可用信息的数量和质量是巨大的,跨越许多不同的信息类型。
我们可以通过多种方式对数据进行分类。 若要在机器学习空间中操作,我们必须了解可供我们使用的数据的类型和数字存储系统。
连续数据、有序数据和分类数据
对于数据操作,我们有时需要了解数据到底代表什么。 这种意识可以帮助我们选择正确的机器学习模型。 它还可以帮助我们以特定、有用的方式组织数据。
连续数据是指可以以任何数量增加或减少的数字信息。 例如,可以在 1 米的基础上加上 1 毫米,计算出的总和为 1.001 米。
分类数据是指不属于连续范围的数据。 在我们的场景中,数据将泰坦尼克号上的人分为“船员”或“乘客”。 分类数据无法以明显的方式存储为数字。
有序数据是指具有已定义顺序的分类数据,因此可以支持存储为数值。 例如,我们可以将“大”、“中”和“小”的值定义为有序数据,因为可以对它们进行数字排名:大 中 小。>> 相比之下,“苹果”、“橙子”和“椰子”的值是分类数据,因为不能对它们进行排名。 有序数据也可以指可以增减的数字,但只能按设定的数量进行增减。 例如,登船人数必须是一个整数,不可能是半个人登船。
ID 是指一种特殊的分类数据,其中每个样本都有自己的唯一 ID。 例如,在我们的泰坦尼克号数据集中,每个人都有给定的 ID 值,即使这个人与其他人同名也是如此。 标识值可帮助我们在数据集中导航,但数据分析不会直接涉及这些值。
数据类型
计算机必须存储和处理我们用于机器学习的所有数据。 虽然我们可以用铅笔将几乎所有数据都写在一张纸上,但计算机可以将信息存储为 0 和 1 组成的代码序列。 这会限制我们使用信息的方式。
数据类型是指计算机存储的数据类型。 数据类型通常具有以下类别:
- 整数:自然数,如 2。
- 浮点数:具有小数位的数字,如 2.43。
- 字符串:字母和单词。
- 布尔值:true 和 false。
- None、void 或 null:不是数据,而是指缺少数据。
这些概念的确切术语和实现因语言而异,但它们在所有计算语言中的工作方式都是类似的。
有时,两种不同的数据类型可以提供相同的功能。 例如,计算机可以将 true/false 值作为布尔值(true 或 false)、字符串(y 或 n)、整数(0 或 1)或浮点数(0.0 或 1.0)来处理。
派生数据类型
使用技术时,会遇到许多超出上述列表的基本和原始数据类型。 计算机可以存储日期、图像、3D 模型等。 我们将这些类型称为派生数据类型。 我们从一个或多个基元数据类型开始,构造派生数据类型。
通常,在机器学习中,这样做有助于将派生类型转换为更简单的表示形式。 例如,我们可以将定义的日期值(如 2017 年 1 月 1 日)存储为整数或浮点数,如 20170101。 整数或浮点数使模型背后的计算更容易。
选项太多?
了解你拥有的数据类型可帮助你选择正确的数据类型。
正确的数据类型取决于你用来运行模型的包,但通常包是比较宽松的。 一般而言:
- 若要处理连续数据,浮点数将是最佳选择。
- 有序数据通常使用整数值进行编码。
- 只涉及两个类别的分类数据通常可以编码为布尔或整数数据。 处理三个或更多类别的分类数据可能会稍微复杂一些。 别担心,下一课将介绍此主题!
在下一个练习中,我们将练习数据可视化,以便更好地理解数据本身。 在执行此操作时,请仔细记下所涉及的数据类型,并尝试识别连续、有序或分类数据类型。