数据计算、查询、压缩及HDF5工具使用全解析
1. 数据计算方式概述
在处理数据时,计算方式与数据的内存布局紧密相关。根据数据在内存中的位置,数组操作算法可大致分为两类:核心内操作(in-core)和核心外操作(out-of-core)。
1.1 核心内操作(in-core)
核心内操作要求所有数据都必须存在于内存中,这类操作可能受内存限制,即可处理的数据量受计算机内存大小的制约。例如,NumPy数组就是内存受限的,因为整个数组必须全部存在于内存中才能进行操作。
下面是一个经典的核心内操作示例,假设有两个NumPy数组 a 和 b 存在于内存中,计算 c = 42 * a + 28 * b + 6 的过程如下:
import numpy as np
a = np.array(...)
b = np.array(...)
c = 42 * a + 28 * b + 6
在计算 c 的表达式时,会创建三个临时数组:
temp1 = 42 * a
temp2 = 28 * b
temp3 = temp1 + temp2
c = temp3 + 6
一般来说,对于 N 个操作,需要构建 N - 1 个临时数组。这会浪费内存,并且比避免使用临时数组的情
超级会员免费看
订阅专栏 解锁全文
25

被折叠的 条评论
为什么被折叠?



