解码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 日

相关推荐

  • 2025年最新DataGrip激活码与永久破解教程(支持2099年)

    本教程适用于JetBrains全系列开发工具,包含DataGrip、PyCharm、IDEA等专业软件! 先展示最新DataGrip版本成功激活的截图,可以看到已完美破解至2099年! 下面通过详细的图文指导,一步步教你如何永久激活DataGrip至2099年。 此方法不仅支持最新版本,也兼容历史版本! 全平台适用(Windows/Mac/Linux) 所有…

    DataGrip激活码 2025 年 7 月 5 日
    20800
  • IntelliJ IDEA 激活码直接激活

    IntelliJ IDEA 2025.2.1 永久破解指南:一键激活至2099年(含补丁下载) 重要声明:本文所涉及的 IntelliJ IDEA 破解补丁及激活码均来源于网络收集,严禁用于商业用途,仅限个人学习研究使用。如有侵权问题,请联系作者删除。经济条件允许的情况下,强烈建议购买官方正版授权! 话不多说,先奉上 IDEA 2025.2.1 版本破解成功…

    IDEA破解教程 2026 年 1 月 12 日
    5900
  • 2025年最新IDEA激活码及永久破解教程:支持JetBrains全家桶2099年授权

    本教程适用于IntelliJ IDEA、PyCharm、DataGrip、GoLand等JetBrains系列开发工具,提供完整的破解方案。下面先展示最新IDEA版本成功破解到2099年的效果截图: 接下来将详细介绍如何实现IDEA永久激活,该方法同样适用于旧版本,且兼容所有操作系统。 获取IDEA安装包 若尚未安装,请先下载官方安装包: 访问JetBrai…

    IDEA破解教程 2025 年 7 月 23 日
    42200
  • Python包管理不再头疼:uv工具快速上手

    Python 包管理生态中存在多种工具,如 pip、pip-tools、poetry、conda 等,各自具备一定功能。 而今天介绍的uv 是 Astral 公司推出的一款基于 Rust 编写的 Python 包管理工具,旨在成为 “Python 的 Cargo ”。 它提供了快速、可靠且易用的包管理体验,在性能、兼容性和功能上都有出色表现,为 Python…

    2024 年 12 月 30 日
    1.3K00
  • 最新pycharm破解激活步骤+永久激活码绑定

    PyCharm 2025.2 永久激活教程:破解补丁+激活码下载(Windows/Mac/Linux通用) 重要声明:本文分享的 PyCharm 破解补丁与激活码均来源于网络收集,仅限个人学习研究使用,严禁商业用途。若涉及侵权内容,请联系作者删除。条件允许的话,强烈建议购买官方正版授权! PyCharm 是 JetBrains 公司出品的一款功能强大的 Py…

    PyCharm激活码 2026 年 1 月 12 日
    4400

发表回复

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

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

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

关注微信