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中__call__用法实例
Aug 29 Python
python表格存取的方法
Mar 07 Python
Python中将变量按行写入txt文本中的方法
Apr 03 Python
Django实现分页功能
Jul 02 Python
实例讲解python中的协程
Oct 08 Python
VPS CENTOS 上配置python,mysql,nginx,uwsgi,django的方法详解
Jul 01 Python
Python使用type关键字创建类步骤详解
Jul 23 Python
python实现PID算法及测试的例子
Aug 08 Python
pyenv与virtualenv安装实现python多版本多项目管理
Aug 17 Python
PyTorch里面的torch.nn.Parameter()详解
Jan 03 Python
Python自动发送和收取邮件的方法
Aug 12 Python
10行Python代码实现Web自动化管控的示例代码
Aug 14 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
php 随机记录mysql rand()造成CPU 100%的解决办法
2010/05/18 PHP
php笔记之常用文件操作
2010/10/12 PHP
thinkphp框架下404页面设置 仅三步
2016/05/14 PHP
jQuery 1.2.x 升? 1.3.x 注意事项
2009/05/06 Javascript
ext checkboxgroup 回填数据解决
2009/08/21 Javascript
IE6 弹出Iframe层中的文本框“经常”无法获得输入焦点
2009/12/27 Javascript
js限制textarea每行输入字符串长度的代码
2012/10/31 Javascript
网页防止tab键的使用快速解决方法
2013/11/07 Javascript
js判断客户端是iOS还是Android等移动终端的方法
2013/12/11 Javascript
js计算德州扑克牌面值的方法
2015/03/04 Javascript
DOM操作一些常用的属性汇总
2015/03/13 Javascript
jQuery实现自动调整字体大小的方法
2015/06/15 Javascript
对于jQuery性能的一些优化建议
2015/08/13 Javascript
AngularJS入门教程之Helloworld示例
2016/12/25 Javascript
基本DOM节点操作
2017/01/17 Javascript
js每隔两秒输出数组中的一项(实例)
2017/05/28 Javascript
Vue2.0学习之详解Vue 组件及父子组件通信
2017/12/12 Javascript
Webpack 之 babel-loader文件预处理器详解
2018/03/23 Javascript
微信小程序用户授权,以及判断登录是否过期的方法
2019/05/10 Javascript
vue $mount 和 el的区别说明
2020/09/11 Javascript
用Python解析XML的几种常见方法的介绍
2015/04/09 Python
Python中文分词实现方法(安装pymmseg)
2016/06/14 Python
Python之列表的插入&替换修改方法
2018/06/28 Python
wxPython实现整点报时
2019/11/18 Python
Pytorch中膨胀卷积的用法详解
2020/01/07 Python
Python如何读取文件中图片格式
2020/01/13 Python
Python项目跨域问题解决方案
2020/06/22 Python
python绘制汉诺塔
2021/03/01 Python
CSS3 二级导航菜单的制作的示例
2018/04/02 HTML / CSS
JAVA中运算符的分类及举例
2015/09/12 面试题
餐饮业经理竞聘演讲稿
2014/01/14 职场文书
参观接待方案
2014/03/17 职场文书
西安大雁塔导游词
2015/02/10 职场文书
利用ajax+php实现商品价格计算
2021/03/31 PHP
win10忘记pin密码登录不了怎么办?win10忘记pin密码登不进去的解决方法
2022/07/07 数码科技
mysql全面解析json/数组
2022/07/07 MySQL