解码numpy的独特魅力

1. 高维ndarray超出存储的应对之策

将数据分割成较小的单元来处理,而非一次性把全部数据集载入。如此操作能削减对内存的占用量。

运用Dask并行计算工具

import dask.array as da

# 构建一个 Dask 数组
data = da.random.random((5, 50, 300, 100, 30, 49), chunks=(1, 10, 100, 50, 10, 10))

# 对每个块开展处理
def handle_block(block):
    # 在此处对块进行处理
    print(f"正在处理形状为 {block.shape} 的块")

# 借助 Dask 进行计算
data.map_blocks(handle_block).compute()

运用Zarr

import zarr
import numpy as np

# 创建一个 Zarr 数组
data = zarr.zeros((5, 50, 300, 100, 30, 49), chunks=(1, 10, 100, 50, 10, 10), dtype=np.float64)

# 对每个块进行处理
def deal_with_block(block):
    # 在此处对块进行处理
    print(f"处理形状为 {block.shape} 的块")

# 采用 Zarr 的块读取方式
for block in data.iter_chunks():
    deal_with_block(block)

2. 随机数的生成

# linspace
x1 = np.linspace(4, 13, sample_num)  # 生成4到13范围内含sample_num个随机数的序列

# random.randint
np.random.randint(0, m, 1)  # 获取0到m范围内的1个整数

3. ndarray的拼接

x = np.concatenate(([x1], [x2]), axis=0) 

4. dot函数的使用

np.dot(a,b)  # 对矩阵a和矩阵b进行点乘运算

5. 数组多维转一维的方法

ravel()flatten()squeeze()这几种方法。ravel():一般不会生成源数据的副本;flatten():会返回源数据的副本;squeeze():只能对维度为1的维度进行降维处理。

6. repeat函数

7. ndarray维度的改变

a.reshape()
# 能够把数据的维度转换成所需的维度。
ndarray.reshape(x, y).astype(float)
# 接着转为tensor

8. 滑动窗口的构建

slide_arr1 = np.lib.stride_tricks.sliding_window_view(a1, 3)  # 原数组,3是窗口大小,也能是元组,比如(2,2)

文章整理自互联网,只做测试使用。发布者:Lomu,转转请注明出处:https://www.it1024doc.com/12903.html

(0)
LomuLomu
上一篇 2025 年 7 月 20 日
下一篇 2025 年 7 月 20 日

相关推荐

  • ChatGPT Plus订阅微信支付宝开通教程

    如果你想给自己的 ChatGPT 账号开通 Plus,但国内银行卡、Visa 验证或官方订阅付款一直不顺,可以走卡密充值方式。这个流程更适合已经有 ChatGPT 账号、只是不方便准备海外信用卡的人:先购买充值卡密,再提交当前账号的 Session,确认邮箱无误后等待 Plus 状态更新。

    未分类 6天前
    2400
  • IDEA 2025.3 激活码最新可用

    IDEA破解教程2024最新版:永久激活至2099年(JetBrains全家桶通用) 这个激活方案兼容IDEA、PyCharm、DataGrip、Goland等Jetbrains系列所有开发工具! 话不多说,先展示最新版IDEA破解成功的界面截图,可以看到授权有效期至2099年,非常给力! 接下来,我将通过图文结合的方式,手把手教你如何将IDEA激活到209…

    IDEA破解教程 2026 年 1 月 14 日
    33700
  • chatgpt会员充值别急着先付款

    搜 chatgpt会员充值 的人,很多并不是差最后那一下付款动作,而是怕这次开通之后到账接不上手头任务、后面续费还得重新找路、或者临时换入口又多走一遍。真想把流程做顺,关键不是先冲着付款页跑,而是先把充值前后的顺序排明白。 如果你想把这次开通和后续续费一次安排顺,也可以直接走我自己常用的这个更省事入口。 ChatGPT Plus / Pro 充值入口 支持C…

    ChatGPT 2026 年 4 月 30 日
    19400
  • ChatGPT Plus订阅还是Pro订阅?别再按使用时长选,先看你有多少任务必须当天给结果

    ChatGPT Plus订阅和ChatGPT Pro订阅怎么选,很多人会先比月费,再看自己每天用了几个小时。这个判断方式很容易失真,因为真正影响体验的,往往不是总使用时长,而是你手里有多少任务要求今天就要给结果。像方案改稿、客户回复、代码排错、简历优化、论文润色,一旦拖到第二天,损失的不只是效率,还有节奏。所以国内用户在考虑 ChatGPT Plus充值、P…

    ChatGPT 2026 年 4 月 15 日
    26200
  • 2024 WebStorm最新激活码,WebStorm永久免费激活码2025-01-19 更新

    WebStorm 2024最新激活码 以下是最新的WebStorm激活码,更新时间:2025-01-19 🔑 激活码使用说明 1️⃣ 复制下方激活码 2️⃣ 打开 WebStorm 软件 3️⃣ 在菜单栏中选择 Help -> Register 4️⃣ 选择 Activation Code 5️⃣ 粘贴激活码,点击 Activate ⚠️ 必看!必看! 🔥 …

    2025 年 1 月 19 日
    75800

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信