详解 NumPy 从磁盘上保存(save)和加载(load)数组

NumPy中,可以使用numpy.save()和numpy.load()方法将数组保存到磁盘中,或从磁盘中加载数组。

接下来将逐一介绍这两个方法。

numpy.save()方法

numpy.save(file, arr, allow_pickle=True, fix_imports=True)方法可以将数组保存到磁盘文件中。它的参数包括:

  • file: 保存数组的文件名或文件对象;
  • arr: 要保存的数组;
  • allow_pickle(可选):布尔值,表示是否允许使用pickle序列化对象,默认为True;
  • fix_imports(可选):布尔值,表示是否修复Python2中的导入问题,默认为True。

例如,将数组保存到名为my_array.npy的文件中:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
np.save('my_array.npy', arr)

numpy.load()方法

numpy.load(file, mmap_mode=None, allow_pickle=True, fix_imports=True, encoding='ASCII')方法可以从磁盘文件中加载数组。它的参数包括:

  • file: 要加载的文件名或文件对象;
  • mmap_mode(可选):内存映射选项,如果给定,则返回memmap对象;
  • allow_pickle(可选):布尔值,表示是否允许使用pickle序列化对象,默认为True;
  • fix_imports(可选):布尔值,表示是否修复Python2中的导入问题,默认为True;
  • encoding(可选):当读取文本数据时使用的编码,例如CSV文件。

例如,从名为my_array.npy的文件中加载数组:

import numpy as np

arr = np.load('my_array.npy')
print(arr)

输出:

[1 2 3 4 5]

存储多个数组

另外,如果要存储多个数组,可以使用savez和savez_compressed函数。savez函数将多个数组保存到一个未压缩的.npz文件中,而savez_compressed函数将它们保存到一个压缩的.npz文件中。

下面是一个使用savez函数保存多个数组的示例:

import numpy as np

# 创建多个数组
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
c = np.array([7, 8, 9])

# 将这些数组保存到一个 .npz 文件中
np.savez('my_arrays.npz', a=a, b=b, c=c)

上面的代码将创建三个数组,并将它们保存到一个名为my_arrays.npz的未压缩的文件中。在保存期间,每个数组都使用一个指定的名称来标识。

要加载这些数组,可以使用load函数,如下所示:

# 从 .npz 文件中加载数组
loaded_data = np.load('my_arrays.npz')

# 获取每个数组
a = loaded_data['a']
b = loaded_data['b']
c = loaded_data['c']

上面的代码将从my_arrays.npz文件中加载数组,并将它们分配给变量a,b和c。

需要注意的是,load函数返回一个类似字典的对象,它可以通过数组的名称来访问数组数据。

除了.npz格式之外,NumPy还支持其他几种文件格式,例如.npy和.npz文件可以通过numpy.save和numpy.load函数进行保存和加载。.npy文件可以保存单个数组,而.npz文件可以保存多个数组,这与save和load函数的行为相同。需要注意的是,这些文件格式仅适用于NumPy数组。

阅读剩余 44%

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解 NumPy 从磁盘上保存(save)和加载(load)数组 - Python技术站

(1)
上一篇 2023年3月4日 上午8:40
下一篇 2023年3月4日

相关文章

  • python numpy库np.percentile用法说明

    以下是关于“python numpy库np.percentile用法说明”的完整攻略。 背景 在numpy库中,我们可以使用np.percentile()函数来计算数组中的百分位数。本攻略将介绍如使用np.percentile()函数,并提供两个示例来演示如何使用np.percentile()函数计算数组中的百位数。 np.percentile()函数 np…

    python 2023年5月14日
    00
  • win10系统VS2019配置点云库PCL1.12.1的详细流程

    win10系统VS2019配置点云库PCL1.12.1的详细流程 PCL(Point Cloud Library)是一个开源的点云处理库,它提供了许多点云处理算法和工具。在本攻略中,我们将介绍如何在win10系统上使用VS2019配置PCL1.12.1,并提供两个示例说明。 环境准备 在开始配置PCL之前,您需要准备以下环境: Windows 10操作系统 …

    python 2023年5月14日
    00
  • numpy.unique()使用方法

    以下是关于Numpy中的np.unique()函数用法的攻略: Numpy中的np.unique()函数 在Numpy中,使用np.unique()函数来获取中的唯一值以下是一些实现方法: np.unique()函数的基本用法 np.unique()函数可以获取数组中的一值以下是一个示例: import numpy as np a = np.array([1…

    python 2023年5月14日
    00
  • Python numpy矩阵处理运算工具用法汇总

    在Python中,Numpy是一个非常强大的数学库,它提供了许多矩阵处理和运算工具。下面是一些常用的Numpy矩阵处理和运算工具的用法汇总: 创建矩阵 使用numpy.array()函数可以创建一个矩阵。下面是一个示例: import numpy as np # 创建一个2×3的矩阵 matrix = np.array([[1, 2, 3], [4, 5, …

    python 2023年5月13日
    00
  • 详解如何使用numpy提高Python数据分析效率

    如何使用Numpy提高Python数据分析效率 Numpy是Python中用于科学计算的一个重要库,它提供了效的多维数组对象和各种派生,以及用于数组的函数。本文将详细讲解何使用N提高Python数据分析效率,括Numpy的基本操作、数组的创建、索引和切片、数组的运算、的拼接和重、数组的转置等。 Numpy的基本操作 在使用Numpy进行数据分析时,需要掌握一…

    python 2023年5月13日
    00
  • pytorch 把图片数据转化成tensor的操作

    在PyTorch中,可以使用torchvision库中的transforms模块将图片数据转化成tensor。以下是一个完整的攻略,包含两个示例说明。 安装torchvision 在使用transforms模块之前,需要先安装torchvision库。可以使用pip安装torchvision。以下是一个安装torchvision的示例: pip instal…

    python 2023年5月14日
    00
  • 这十大Python库你真应该知道

    这十大Python库你真应该知道 Python是一种广泛使用的编程语言,拥有丰富的库和工具,可以帮助开发人员更快地完成任务。这篇文章中,我们将介绍十大Python库这些库可以帮助您提高编程效率和代码质量。 1. NumPy NumPy是Python中最常用的科学计库之一。它提供了一个强大的多维数组对象,以及用于处理这些数组的各种函数。NumPy还提供了线代数…

    python 2023年5月14日
    00
  • 纯用NumPy实现神经网络的示例代码

    以下是关于“纯用NumPy实现神经网络的示例代码”的完整攻略。 神经网络的基本结构 神经网络是一种由多个神经元组成的网络结构,它可以来解决分类、回归等问题。神经网络的基本构包括输入层、隐藏层和输出层。其中,输入层接收输入数据隐藏层对输入数据进行处理,输出层输出最终结果。下面是一个简单的神经网络结构示意图: 输入层 -> 隐藏 -> 输出层 神经网…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部