Python读取mat文件,并保存为pickle格式的方法

作者:hdc 时间:2023-02-15 19:34:41 

这两天在搞Theano,要把mat文件转成pickle格式载入Python。

Matlab是把一维数组当做n*1的矩阵的,但Numpy里还是有vector和matrix的区别,Theano也是对二者做了区分。

直接把代码贴出来吧,好像也没什么可讲的 = =


from scipy.io import loadmat
import numpy, cPickle

data_dict=loadmat(r'E:\dataset\CIFAR10\CIFAR10_small.mat') #need an r!

my_array=numpy.array([1,1])
for key in data_dict.keys():
if type(data_dict[key]) == type(my_array):
 #print matrix information
 print key, type(data_dict[key]),
 print data_dict[key].shape

#shape(n,1) (matrix in theano) -> shape(n,) (vector in theano)
print data_dict['Ytr'].shape
Ytr=numpy.hstack(data_dict['Ytr'])
Yte=numpy.hstack(data_dict['Yte'])
Yte=numpy.hstack(data_dict['Yte'])
print Ytr.shape

train_set=(data_dict['Xtr'],Ytr)
valid_set =(data_dict['Xte'],Yte)
test_set =(data_dict['Xte'],Yte)

output = open('cifar10_small_v.pkl', 'wb')

cPickle.dump(train_set, output)
cPickle.dump(valid_set, output)
cPickle.dump(test_set, output)

output.close()
print 'save is done'

pkl_file = open('cifar10_small_v.pkl', 'rb')

data1 = cPickle.load(pkl_file) # is train_set
data2 = cPickle.load(pkl_file) # is valid_set
data3 = cPickle.load(pkl_file) # is test_set

print type(data1[1]),data1[1].shape

pkl_file.close()

来源:https://blog.csdn.net/orangehdc/article/details/39758779

标签:Python,mat,pickle
0
投稿

猜你喜欢

  • Python编程实现简易的音乐播放器基本操作

    2022-05-25 08:41:16
  • Python中new方法的详解

    2022-12-06 14:20:18
  • 初学者必读:经典的数据库记录分页代码

    2009-01-08 15:27:00
  • pycharm运行scrapy过程图解

    2022-07-19 19:30:20
  • uniapp小程序之配置首页搜索框功能的实现

    2024-04-22 13:03:28
  • 利用Golang生成整数随机数方法示例

    2024-05-08 10:22:58
  • 如何在ASP中使用SQL存储过程

    2008-02-26 12:09:00
  • Bootstrap-table自定义可编辑每页显示记录数

    2024-04-29 13:12:30
  • Python中的Numpy 面向数组编程常见操作

    2021-08-21 20:31:32
  • 基于Python的自媒体小助手---登录页面的实现代码

    2021-12-27 16:46:17
  • Python发起请求提示UnicodeEncodeError错误代码解决方法

    2022-09-14 09:47:36
  • Python3列表内置方法大全及示例代码小结

    2022-09-23 01:39:21
  • pycharm debug 断点调试心得分享

    2022-11-12 05:10:06
  • Python队列、进程间通信、线程案例

    2021-10-23 16:43:03
  • Python利用Flask-Mail实现发送邮件详解

    2023-09-29 03:02:18
  • Favicon图标小常识

    2010-04-01 12:01:00
  • Django框架静态文件处理、中间件、上传文件操作实例详解

    2021-03-07 14:31:04
  • Python中Parser的超详细用法实例

    2022-05-02 10:16:30
  • PyTorch 随机数生成占用 CPU 过高的解决方法

    2021-09-23 09:12:31
  • vs code开发中语法正确但显示报错问题分析解决

    2023-08-05 11:54:26
  • asp之家 网络编程 m.aspxhome.com