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编程判断这天是这一年第几天的方法示例
Apr 18 Python
Django 导出 Excel 代码的实例详解
Aug 11 Python
Python输出带颜色的字符串实例
Oct 10 Python
Python语言实现百度语音识别API的使用实例
Dec 13 Python
python3 发送任意文件邮件的实例
Jan 23 Python
python实现移位加密和解密
Mar 22 Python
12个步骤教你理解Python装饰器
Jul 01 Python
Python简易版图书管理系统
Aug 12 Python
Python实现栈和队列的简单操作方法示例
Nov 29 Python
python add_argument()用法解析
Jan 29 Python
Python random库使用方法及异常处理方案
Mar 02 Python
Python 串口通信的实现
Sep 29 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冒泡排序
2014/12/30 PHP
PHP开发制作一个简单的活动日程表Calendar
2016/06/20 PHP
Thinkphp5 微信公众号token验证不成功的原因及解决方法
2017/11/12 PHP
PHP7 参数处理机制修改
2021/03/09 PHP
Javascript实现的分页函数
2007/02/07 Javascript
仿百度输入框智能提示的js代码
2013/08/22 Javascript
jQuery移除tr无效的解决方法(tr是动态添加)
2014/09/22 Javascript
推荐10 个很棒的 jQuery 特效代码
2015/10/04 Javascript
利用jQuery及AJAX技术定时更新GridView的某一列数据
2015/12/04 Javascript
JavaScript字符串删除重复字符的方法
2015/12/25 Javascript
javascript+HTML5 Canvas绘制转盘抽奖
2020/05/16 Javascript
js方法数据验证的简单实例
2016/09/17 Javascript
vue.js表格分页示例
2016/10/18 Javascript
基于javascript实现的快速排序
2016/12/02 Javascript
获取JavaScript异步函数的返回值
2016/12/21 Javascript
jQuery与js实现颜色渐变的方法
2016/12/30 Javascript
vue的一个分页组件的示例代码
2017/12/25 Javascript
vue.js配合$.post从后台获取数据简单demo分享
2018/08/11 Javascript
详解vue-router 动态路由下子页面多页共活的解决方案
2019/12/22 Javascript
Element DateTimePicker日期时间选择器的使用示例
2020/07/27 Javascript
python利用urllib和urllib2访问http的GET/POST详解
2017/09/27 Python
用Python shell简化开发
2018/08/08 Python
tensorflow之变量初始化(tf.Variable)使用详解
2020/02/06 Python
python用Tkinter做自己的中文代码编辑器
2020/09/07 Python
python+selenium自动化实战携带cookies模拟登陆微博
2021/01/19 Python
html5 乒乓球(碰撞检测)实例二
2013/07/25 HTML / CSS
Champion官网:美国冠军运动服装
2017/01/25 全球购物
美国著名手表网站:Timepiece
2017/11/15 全球购物
电气工程师岗位职责
2014/01/01 职场文书
客户表扬信范文
2014/01/10 职场文书
舞蹈专业大学生职业规划范文
2014/03/12 职场文书
会议欢迎词
2015/01/23 职场文书
酒店员工辞职信范文
2015/02/28 职场文书
干货:如何写好工作计划!
2019/05/17 职场文书
演讲稿之开卷有益
2019/08/07 职场文书
Navicat Premium自定义 sql 标签的创建方式
2022/09/23 数据库