0Pricing
Data Science Academy · 课时

形状、大小与 dtype

了解数组的结构

形状、大小与 dtype 是 CoddyKit 上的免费 Data Science Academy 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Data Science Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Data Science Academy 课程共包含 4 节课。

读取数组的结构

每个数组都携带描述自身的元数据。三个标签几乎可以告诉您所有重要信息:它的形状、大小和数据类型。让我们逐一了解。🔍

形状:行和列

形状是各维度长度组成的元组。一个 3×4 的网格会报告 (3, 4):向下有三行,横向有四列。

a = np.zeros((3, 4))
a.shape  # (3, 4)

形状告诉您布局

形状是您首先应进行的合理性检查。如果模型需要 (100, 5),而您提供的是 (5, 100),那么形状不匹配就是错误的藏身之处。

ndim:维度数量

ndim属性会统计维度数量。一行数据是 1,表格是 2,表格堆叠起来是 3。它其实就是形状的长度。

a.ndim  # 2

大小:元素总数

大小是元素总数,也就是形状中每个数值的乘积。形状为 (3, 4) 的数组大小为 12。

a.size  # 12

数据类型:共享的单一类型

数据类型表示所有元素共享的单一类型,例如 int64 或 float64。它会影响精度和内存使用量。

np.array([1, 2, 3]).dtype  # int64

有意识地选择数据类型

您可以通过 dtype 参数自行设置类型。在超大数组中,可以使用int32这样的较小类型来节省内存。

np.array([1, 2, 3], dtype='int32')

数据类型会影响精度

float32 能保存的小数位少于float64。微小的舍入误差会逐渐累积,因此请根据数字的实际需求选择类型。

使用 astype 进行转换

已经有一个数组了吗?astype会以新类型返回一个副本,适合将浮点数转换为整洁的整数。

f = np.array([1.0, 2.0])
f.astype('int64')

itemsize:每个元素占用的字节数

itemsize会告诉您每个元素占用多少字节。将它乘以大小,即可估算数组占用的总内存。

a.itemsize  # 8 for float64

计算前先检查

先检查形状和数据类型可以节省数小时。它们能在计算悄悄出错之前,就揭示不匹配的数据和错误类型。✅

快速检查

让我们测试一下您对数组形状的理解。

回顾

现在,您可以一眼读懂数组:用形状了解布局,用 ndim 和大小了解数量,用数据类型了解共享类型。这四项检查可以及早发现大多数错误。🎉

常见问题解答

「形状、大小与 dtype」课时是免费的吗?

是的 — 「形状、大小与 dtype」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Data Science Academy 课程的其余内容,请升级到 CoddyKit PRO。 Data Science Academy 课程共包含 4 节课。

「形状、大小与 dtype」这节课中我会学到什么?

了解数组的结构 你通过在浏览器中直接运行的动手代码来练习 Data Science Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Data Science Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Data Science Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。

「形状、大小与 dtype」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Data Science Academy 课中编写并运行代码吗?

能。每节 Data Science Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 从 Python 列表到 ndarray
  2. 形状、大小与 dtype
  3. 无需循环的向量化数学运算
  4. 数组索引与切片
← 返回 Data Science Academy