python中 .npy文件的读写操作实例


Posted in Python onApril 14, 2022

Numpy binary files (NPY, NPZ)

注:.npy文件是numpy专用的二进制文件。

1. 读取与保存

import numpy as np

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

loadData = np.load('weight.npy')

print("----type----")
print(type(loadData))
print("----shape----")
print(loadData.shape)
print("----data----")
print(loadData)

python中 .npy文件的读写操作实例

至于具体API参见:https://docs.scipy.org/doc/numpy/index.html

2. 实战案例

在深度神经网络训练过程中通常需要读取预训练权重,预训练权重通常是 .npy文件,比如vgg16.npy(https://pan.baidu.com/s/1Ru5FJVSPjYTHZwlmzRwRvQ   提取码:ygxw)。本次就以分析vgg16.npy为例进行说明。

import numpy as np

# 注意编码方式
pre_train = np.load("vgg16.npy", allow_pickle=True, encoding="latin1")

print("------type-------")
print(type(pre_train))
print("------shape-------")
print(pre_train.shape)
print("------data-------")
print(pre_train)

python中 .npy文件的读写操作实例

这是个啥?为啥shape没有? 但是可以看出来 pre_train 里元素应该是一个字典,我们尝试取出来。

注:ndarray.item()是复制数组中的一个元素,并将其返回。具体语法参见:https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.item.html?highlight=item#numpy.ndarray.item

import numpy as np

pre_train = np.load("vgg16.npy", allow_pickle=True, encoding="latin1")

data_dic = pre_train.item()

print("------type-------")
print(type(data_dic))
print("------conv1_1  data-------")
print(data_dic['conv1_1'])   # 返回一个列表,该列表有两个array,表示conv1_1的权重w与偏置b
print("------conv1_1  shape-------")
print((data_dic['conv1_1'][0]).shape)

看看结果:

python中 .npy文件的读写操作实例

python中 .npy文件的读写操作实例

可以发现,这是第一个卷积层的权重参数,输入channel是3,输出channel是64。

附:python中 .npy文件的读写操作实例

numpy中的二进制文件的读写:

save

np.save ("./文件名", 数组名):以二进制的格式保存数据

load

np.load("./文件名.npy"): 函数是从二进制的文件中读取数据

savez

np.savez(’./文件名’,数组名1,数组名2,…):savez 函数可以将多个数组保存到一个文件中

(1)save操作

import numpy as np
a=np.arange(5)
np.save('get.npy',a)

(2)load操作

import numpy as np
a=np.load('load.npy')
print(a)

(3)savez操作

import numpy as np
a=np.arange(3)
b=np.arange(4)
c=np.arange(5)
np.savez('array_save.npz',a,b,c)  多个ndarray类型的数组

总结

到此这篇关于python读取npy文件数据的文章就介绍到这了!

Python 相关文章推荐
跟老齐学Python之再深点,更懂list
Sep 20 Python
python实现在windows下操作word的方法
Apr 28 Python
Python中import机制详解
Nov 14 Python
python中使用xlrd读excel使用xlwt写excel的实例代码
Jan 31 Python
pandas object格式转float64格式的方法
Apr 10 Python
Python实现的个人所得税计算器示例
Jun 01 Python
详解如何从TensorFlow的mnist数据集导出手写体数字图片
Aug 05 Python
使用python 对验证码图片进行降噪处理
Dec 18 Python
PyTorch中的padding(边缘填充)操作方式
Jan 03 Python
解决Alexnet训练模型在每个epoch中准确率和loss都会一升一降问题
Jun 17 Python
Django日志及中间件模块应用案例
Sep 10 Python
python实现excel公式格式化的示例代码
Dec 23 Python
Python Matplotlib绘制等高线图与渐变色扇形图
python读取并查看npz/npy文件数据以及数据显示方法
Apr 14 #Python
在NumPy中深拷贝和浅拷贝相关操作的定义和背后的原理
Python捕获、播放和保存摄像头视频并提高视频清晰度和对比度
Apr 14 #Python
Python中time标准库的使用教程
Apr 13 #Python
Python函数对象与闭包函数
Apr 13 #Python
Python作用域和名称空间的详细介绍
Apr 13 #Python
You might like
PHP连接SQLServer2005的实现方法(附ntwdblib.dll下载)
2012/07/02 PHP
php缓冲 output_buffering的使用详解
2013/06/13 PHP
php的闭包(Closure)匿名函数初探
2016/02/14 PHP
PHP封装XML和JSON格式数据接口操作示例
2019/03/06 PHP
use jscript with List Proxy Server Information
2007/06/11 Javascript
jquery ajax return没有返回值的解决方法
2011/10/20 Javascript
将文本输入框内容加入表中的js代码
2013/08/18 Javascript
javascript 构造函数方式定义对象
2015/01/02 Javascript
当jquery ajax遇上401请求的解决方法
2016/05/19 Javascript
Javascript实现通过选择周数显示开始日和结束日的实现代码
2016/05/30 Javascript
基于AngularJs + Bootstrap + AngularStrap相结合实现省市区联动代码
2016/05/30 Javascript
Bootstrap中的fileinput 多图片上传及编辑功能
2016/09/05 Javascript
微信小程序 Storage API实例详解
2016/10/02 Javascript
详解JavaScript时间处理之几个月前或几个月后的指定日期
2016/12/21 Javascript
遍历json获得数据的几种方法小结
2017/01/21 Javascript
Vue2.2.0+新特性整理及注意事项
2018/08/22 Javascript
vue实现在线预览pdf文件和下载(pdf.js)
2019/11/26 Javascript
Javascript异步流程控制之串行执行详解
2020/09/27 Javascript
[03:33]TI9战队采访 - Infamous
2019/08/20 DOTA
[51:17]完美世界DOTA2联赛循环赛Inki vs DeMonsTer 第二场 10月30日
2020/10/31 DOTA
MySQL适配器PyMySQL详解
2017/09/20 Python
Python实现将照片变成卡通图片的方法【基于opencv】
2018/01/17 Python
pandas DataFrame 交集并集补集的实现
2019/06/24 Python
Python Pandas 箱线图的实现
2019/07/23 Python
Python timeit模块的使用实践
2020/01/13 Python
tensorflow 报错unitialized value的解决方法
2020/02/06 Python
解决pytorch 交叉熵损失输出为负数的问题
2020/07/07 Python
Python实现封装打包自己写的代码,被python import
2020/07/12 Python
不同浏览器对CSS3和HTML5的支持状况
2009/10/31 HTML / CSS
美国最便宜的旅游网站:CheapTickets
2017/07/09 全球购物
超市重阳节活动方案
2014/02/10 职场文书
员工生日会策划方案
2014/06/14 职场文书
学生未请假就回家检讨书
2014/09/22 职场文书
公司租房协议书范本
2014/10/08 职场文书
2015年七一建党节演讲稿
2015/03/19 职场文书
2019年教师节:送给所有老师的祝福语
2019/09/05 职场文书