Python 存取npy格式数据实例


Posted in Python onJuly 01, 2020

数据处理的时候主要通过两个函数

(1):np.save(“test.npy”,数据结构) ----存数据

(2):data =np.load('test.npy") ----取数据

给2个例子如下(存列表)

1、

z = [[[1, 2, 3], ['w']], [[1, 2, 3], ['w']]]
np.save('test.npy', z)
x = np.load('test.npy')

x:
->array([[list([1, 2, 3]), list(['w'])],
    [list([1, 2, 3]), list(['w'])]], dtype=object)

2、存字典

x
-> {0: 'wpy', 1: 'scg'}
np.save('test.npy',x)
x = np.load('test.npy')
x
->array({0: 'wpy', 1: 'scg'}, dtype=object)

3、在存为字典格式读取后,需要先调用如下语句

data.item()

将数据numpy.ndarray对象转换为dict

补充知识:python读取mat或npy文件以及将mat文件保存为npy文件(或npy保存为mat)的方法

读取mat文件并存为npy格式文件

具体见代码,注意h5py的转置问题

import numpy as np
from scipy import io

mat = io.loadmat('yourfile.mat')
# 如果报错:Please use HDF reader for matlab v7.3 files
# 改为下一种方式读取
import h5py
mat = h5py.File('yourfile.mat')

# mat文件里可能有多个cell,各对应着一个dataset

# 可以用keys方法查看cell的名字, 现在要用list(mat.keys()),
# 另外,读取要用data = mat.get('名字'), 然后可以再用Numpy转为array
print(mat.keys())
# 可以用values方法查看各个cell的信息
print(mat.values())

# 可以用shape查看维度信息
print(mat['your_dataset_name'].shape)
# 注意,这里看到的shape信息与你在matlab打开的不同
# 这里的矩阵是matlab打开时矩阵的转置
# 所以,我们需要将它转置回来
mat_t = np.transpose(mat['your_dataset_name'])
# mat_t 是numpy.ndarray格式

# 再将其存为npy格式文件
np.save('yourfile.npy', mat_t)

npy文件的读取很简单

import numpy as np

matrix = np.load('yourfile.npy')

可以重新读取npy文件保存为mat文件

方法一(在MATLAB双击打开时遇到了错误:Unable to read MAT-file *********.mat. Not a binary MAT-file. Try load -ASCII to read as text. ):

import numpy as np

matrix = np.load('yourfile.npy')
f = h5py.File('yourfile.mat', 'w')
f.create_dataset('dataname', data=matrix)
# 这里不会将数据转置

方法二(使用scipy):

from scipy import io

mat = np.load('rlt_gene_features.npy-layer-3-train.npy')
io.savemat('gene_features.mat', {'gene_features': mat})

以上这篇Python 存取npy格式数据实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中ConfigParse模块的用法
Sep 29 Python
让 python 命令行也可以自动补全
Nov 30 Python
详解在Python程序中解析并修改XML内容的方法
Nov 16 Python
Python文件和流(实例讲解)
Sep 12 Python
python 文件转成16进制数组的实例
Jul 09 Python
Python爬虫框架Scrapy基本用法入门教程
Jul 26 Python
python pandas库的安装和创建
Jan 10 Python
python 弹窗提示警告框MessageBox的实例
Jun 18 Python
解决pyecharts在jupyter notebook中使用报错问题
Apr 23 Python
tensorflow 重置/清除计算图的实现
Jan 19 Python
django model通过字典更新数据实例
Apr 01 Python
python3爬虫中多线程进行解锁操作实例
Nov 25 Python
基于python实现音乐播放器代码实例
Jul 01 #Python
使用ITK-SNAP进行抠图操作并保存mask的实例
Jul 01 #Python
python使用nibabel和sitk读取保存nii.gz文件实例
Jul 01 #Python
.img/.hdr格式转.nii格式的操作
Jul 01 #Python
ITK 实现多张图像转成单个nii.gz或mha文件案例
Jul 01 #Python
Python环境管理virtualenv&virtualenvwrapper的配置详解
Jul 01 #Python
读取nii或nii.gz文件中的信息即输出图像操作
Jul 01 #Python
You might like
PHP4中session登录页面的应用
2008/07/25 PHP
PHP5 的对象赋值机制介绍
2011/08/02 PHP
PHP获取网址的顶级域名函数代码
2012/09/24 PHP
完整删除ecshop中获取店铺信息的API
2014/12/24 PHP
php检查日期函数checkdate用法实例
2015/03/19 PHP
帝国CMS留言板回复后发送EMAIL通知客户
2015/07/06 PHP
php 实现Hash表功能实例详解
2016/11/29 PHP
PHP判断是否是微信打开,浏览器打开的方法
2018/03/14 PHP
PHP中数组转换为SimpleXML教程
2019/01/27 PHP
javascript GUID生成器实现代码
2009/10/31 Javascript
javascript入门基础之私有变量
2010/02/23 Javascript
ImageZoom 图片放大镜效果(多功能扩展篇)
2010/04/14 Javascript
解决jQuery插件tipswindown与hintbox冲突
2010/11/05 Javascript
本地对象Array的原型扩展实现代码
2010/12/04 Javascript
一个简单的瀑布流效果(主体形式自写)
2013/05/27 Javascript
vue中使用localstorage来存储页面信息
2017/11/04 Javascript
使用express搭建一个简单的查询服务器的方法
2018/02/09 Javascript
Es6 Generator函数详细解析
2018/02/24 Javascript
javascript二维数组和对象的深拷贝与浅拷贝实例分析
2019/10/26 Javascript
Vue中qs插件的使用详解
2020/02/07 Javascript
python多线程抓取天涯帖子内容示例
2014/04/03 Python
python 按不同维度求和,最值,均值的实例
2018/06/28 Python
PyCharm-错误-找不到指定文件python.exe的解决方法
2019/07/01 Python
python实现的发邮件功能示例
2019/09/11 Python
Python3.7 pyodbc完美配置访问access数据库
2019/10/03 Python
Pycharm中安装wordcloud等库失败问题及终端通过pip安装的Python库如何添加到Pycharm解释器中(推荐)
2020/05/10 Python
pycharm 2018 激活码及破解补丁激活方式
2020/09/21 Python
Java ExcutorService优雅关闭方式解析
2020/05/30 Python
高性能装备提升营地:Kammok
2019/02/27 全球购物
创立科技Java面试题
2015/11/29 面试题
商务考察邀请函范文
2014/01/21 职场文书
2014年五一劳动节社区活动总结
2014/04/14 职场文书
反腐倡廉演讲稿
2014/05/22 职场文书
工商管理专业毕业生自我鉴定2014
2014/10/04 职场文书
2014预防青少年违法犯罪工作总结
2014/12/10 职场文书
DIY胆机必读:各国电子管评价
2022/04/06 无线电