.npy文件_Numpy库使用入门(六)文件的存取

v2-04f1b4220468b3363bdbd56b6c6473ab_1440w.jpg?source=172ae18b
ERNIE:BERT,你看到我的npy了吗,我记得我放在这个文件夹里的呀(」><)」
BERT:就你还有npy?我还单着呢 ̄へ ̄
ERNIE:你想什么呢?我指的是numpy储存数据的文件的后缀名.npy......(oT-T)尸
BERT:emm......

文件的存取

读取CSV文件

将数组中的数据写入CSV文件中

  • 函数:np.savetxt(frame,array,fmt='%.18e',delimiter=None)
  • frame:文件、字符串或产生器,可以是.gz或.bz2的压缩文件。
  • array:存入文件的数组。
  • fmt:写入文件的格式,例如:%d %.2f %.18e
  • delimiter:分割字符串,默认是任何空格。

打开编程环境:

import numpy as np
a = np.arange(20).reshape(4,5)
np.savetxt('a.csv',a,fmt='%.1f',delimiter=',')

运行后打开记事本:

0.0,1.0,2.0,3.0,4.0
5.0,6.0,7.0,8.0,9.0
10.0,11.0,12.0,13.0,14.0
15.0,16.0,17.0,18.0,19.0

读取CSV文件到数组中

  • 函数np.loadtxt(frame,dtype=np.float,delimiter=None,unpack=False)
  • frame:文件、字符串或产生器,可以是.gz或.bz2的压缩文件。
  • dtype:数据类型,可选。
  • delimiter:分割字符串,默认是任何空格。
  • unpack:如果True,读入属性将分别写入不同变量。

打开编程环境,我们读入刚才的a.csv

import numpy as np
a = np.loadtxt('a.csv',dtype=np.int,delimiter=",")
print(a)

运行结果:

[[ 0  1  2  3  4][ 5  6  7  8  9][10 11 12 13 14][15 16 17 18 19]]

总结

  • 存入CSV文件:np.savetxt(),无返回值。
  • 取CSV文件:np.loadtxt(),有返回值。
  • 局限性:只能有效存取一维和二维数据。

存取多维数组的方法

将多维数据存入文件

  • 函数:a.tofile(frame,sep='',format='%s')
  • frame:文件、字符串。
  • sep:数据分割字符串,如果是空串,写入文件为二进制。
  • format:写入数据的格式。

再次打开编程环境(安利一波slight亮主题的pycharm):

import numpy as np
a = np.arange(20).reshape(4,5)
a.tofile("a.bat",sep=",",format='%d')

我们得到了一个二进制文件打开后:

0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19

可以看到,与savetxt函数不同,tofile输出的文件并没有体现数据的维度,而是将数组中的所有数据压缩成一维再逐个输出到文件中。

读入二进制文件

  • 函数:np.fromfile(frame,dtype=float,count=-1,sep='')
  • frame:文件、字符串。
  • dtype:读取的数据类型。
  • count:读入元素个数,-1表示读入整个文件。
  • sep:数据分割字符串,如果是空串,写入文件为二进制。

再试试:

import numpy as np
a = np.fromfile("a.bat",dtype=np.int,sep=',').reshape(4,5)
print(a)

运行结果:

[[ 0  1  2  3  4][ 5  6  7  8  9][10 11 12 13 14][15 16 17 18 19]]

np专用文件存取方式

np针对自身有一个非常简便的文件存取方式(其实笔者认为上面两种挺简单的了......),这个方法需要使用numpy特定的文件格式(.npy)

存入

  • 存函数:np.save(fname,array)np.savez(fname,array)
  • frame:文件名,以.npy为扩展名,压缩名为.npz
  • array:数组变量。

读取

  • 函数:np.load(fname)
  • frame:文件名,以.npy为扩展名,压缩名为.npz

来试试这种(最简便的文件读取方式):

import numpy as np
a = np.arange(100).reshape(5,10,2)
np.save("a.npy",a)
b = np.load("a.npy")
print(b)

运行结果:

[[[ 0  1][ 2  3][ 4  5]...[94 95][96 97][98 99]]]
​

为什么这种用.npy文件存取的方式使用起来更简单呢?我们打开“a.npy”文件,会在看不懂的文件的第一行看到一些我们看得懂的:

揘UMPY• v {'descr': '<i4', 'fortran_order': False, 'shape': (5, 10, 2), }    

事实上np.save将np数组以二进制形式存入.npy文件,并将np数组的原信息以键值对的形式(字典)存入.npy文件的第一行。这是为np量身打造的文件格式,所以我们在读取时就不需要指定一些其他的参数了,原本的np数组信息早就存进去了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/489877.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

redis rua解决库存问题_如何解决高并发下的库存安全问题,没你想得那么复杂(附源码)...

一、 问题不知道大家该开发中有没有遇到这样的一个问题&#xff0c;在电影院购票或者去网上买东西的时候&#xff0c;比方说当年哪吒大电影出来的时候&#xff0c;那抢票相当火爆啊&#xff0c;一票难求&#xff0c;那购票系统的后台是如何保证观众能买到自己喜欢的票同时不用担…

AI 白皮书:赢家、输家

来源&#xff1a;云头条引言&#xff1a;纵观历史&#xff0c;对企业界而言改变游戏规则的始终是技术。制造商取代手艺人&#xff0c;工厂从制造商手里接过接力棒&#xff0c;自动化和遥测技术取代大部分重复性的人力劳动。从个人计算机到互联网和移动商务&#xff0c;在过去的…

python 首次登陆outlook 脚本_记Python“用户环境”的一次完美应用

在之前写过一篇关于虚拟环境使用的文章&#xff0c;但是还没有好好的介绍一下 Python 的用户环境&#xff0c;原因是自己一直没遇到要使用 用户环境 的使用场景&#xff0c;所以就一直懒得写。恰巧这两天&#xff0c;自己遇到了一个使用用户环境的体验可以完爆虚拟环境的案例&a…

今日头条、抖音推荐算法原理全文详解!

来源&#xff1a;运营大叔本次分享将主要介绍今日头条推荐系统概览以及内容分析、用户标签、评估分析&#xff0c;内容安全等原理。一、系统概览推荐系统&#xff0c;如果用形式化的方式去描述实际上是拟合一个用户对内容满意度的函数&#xff0c;这个函数需要输入三个维度的变…

星梦缘陈彦妃_浙江舟山80后女演员,2003年出演偶像剧《星梦缘》,还是专业模特...

陈彦妃&#xff0c;1984年2月4日出生于浙江省舟山市&#xff0c;中国内地影视女演员、流行乐歌手、模特。陈彦妃是一个真性情的女孩&#xff0c;在高中时期拍摄了偶像剧《星梦缘》&#xff0c;在这部戏中&#xff0c;陈彦妃基本上是本色出演&#xff0c;进入大学之后&#xff0…

python hstack_Python小白数据科学教程:NumPy (下)

点击“简说Python”&#xff0c;选择“置顶/星标公众号”福利干货&#xff0c;第一时间送达&#xff01;本文作者&#xff1a;王圣元转载自&#xff1a;王的机器本文偏长(1.8w字)&#xff0c;老表建议先收藏&#xff0c;然后转发朋友圈&#xff0c;然后吃饭、休闲时慢慢看&…

MATLAB并行实现的简单方法

此方法只是利用了matlab的设定&#xff0c;不需要额外知识。 众所周知&#xff0c;matlab是单线程的&#xff0c;但matlab的每个应用窗口都是一个线程&#xff0c;因此可以同时开启多个MATLAB跑程序&#xff0c;占满CPU的所有core。 例如处理多个文件的计算&#xff0c;单线程…

POJ 1631 nlogn求LIS

方法一&#xff1a; 二分 我们可以知道 最长上升子序列的 最后一个数的值是随序列的长度而递增的 &#xff08;呃呃呃 意会意会&#xff09; 然后我们就可以二分找值了&#xff08;并更新&#xff09; //By SiriusRen #include <cstdio> #include <cstring> #incl…

城市大脑与未来超级智能建设规范研究报告即将发布

来源&#xff1a;今日头条21世纪以来&#xff0c;特别是在2010年以来&#xff0c;前沿科技领域出现诸多“大脑”概念&#xff0c;企业界出现谷歌大脑&#xff0c;百度大脑&#xff0c;阿里大脑&#xff0c;360安全大脑&#xff0c;腾讯超级大脑等&#xff0c;产业界出现城市大脑…

练习图200例图纸讲解_【宅家数学课23】经典微课6:苏教版六年级下册比例尺典型例题选讲及练习(含答案)...

(截止日期&#xff1a;3月31日)学习过程1、点击观看经典微课&#xff1a;微课视频《比例尺》2、认真学习典型例题&#xff0c;完成下方练习题3、查看答案&#xff0c;在家长指导下批改&#xff0c;订正错误。苏教版小学数学六年级下册比例尺典型例题选讲及练习【考点分析】【例…

ajax datatype_Ajax的基本使用

Asynchronous javascript and xmlAjax的实现 : 基于一个对象XMLHttpRequest (如何获取?)步骤: 1. 获取ajax对象function getRequestObject() {if (window.XMLHttpRequest) {// 支持Opera, Safari, Mozilla, Chrome,Internet Explorer 7, and IE 8.return(new XMLHttpRequest()…

MATLAB画图详细教程

本文将详细介绍如何用matlab绘图并美化。 关于figure() 创建图窗窗口&#xff1a;figure() figure()的属性&#xff1a; Name&#xff1a;在标题栏显示的名称&#xff0c;接字符串&#xff0c;如Test Position&#xff1a;在电脑屏幕上的位置和大小&#xff0c;后接向量[l…

android 发送广播_从0系统学Android--5.2 发送广播

从0系统学Android--52 发送广播本系列文章目录&#xff1a;更多精品文章分类本系列持续更新中…. 初级阶段内容参考《第一行代码》5.3 发送自定义广播前面已经学习了如何接受广播了&#xff0c;下面来学习如何发送自定义广播&#xff0c;广播类型分为&#xff1a;标准广播和有序…

31页官方PPT,回顾史上最大芯片WSE:科技的壮丽美感!

来源&#xff1a;芯潮2019年8月20日&#xff0c;在Hot Chips顶会上&#xff0c;发布了一款震惊世界的芯片&#xff1a;全球有史以来最大的计算机芯片wafer-scale engine &#xff08;WSE&#xff09;问世&#xff01;这款巨型芯片来自美国创企Cerebras&#xff0c;每边约22厘米…

Node.js npm 详解

一、npm简介 安装npm请阅读我之前的文章Hello Node中npm安装那一部分&#xff0c;不过只介绍了linux平台&#xff0c;如果是其它平台&#xff0c;有前辈写了更加详细的介绍。 npm的全称&#xff1a;Node Package Manager. ####&#xff08;1&#xff09;通俗的理解 其实从字面意…

html怎么在图片上添加文字_Image J基础操作:给图片添加文字和标注

对图片添加标注和文字是科研图片处理中一个非常基础的操作,Image J也可以进行这方面的处理。 01利用描边和填充添加 在绘制好选区(几乎只会用到箭头工具)之后选择:Edit-Draw(描边,快捷键Ctrl+D),使用事先设定好的颜色和粗细进行绘制;也可以填充设定好的颜色Edit-Fill(填充…

怎么更改sql的实例版本_学会复杂一点的SQL语句:Oracle DDL和DML

create&#xff1a;创建表创建用户创建视图创建表create table student(id int,score int) ;student后面与括号之间可以有空格可以没有创建用户create user liuyifei identified by 4852396;drop&#xff1a;删除整个表、删除指定的用户、删除指定的存储空间drop table table_n…

再谈智能

来源&#xff1a;人机与认知实验室1. 智能的产生1.1 智能生成机理有关智能生成的机理&#xff0c;一直是许多领域关注的焦点问题&#xff0c;涉及面之广、深很是少见&#xff0c;初步梳理可能会与这样几个最基本的问题有关&#xff1a;认知生成的机理、知识生成的机理、意…

的图片怎么循环渲染_十分钟教你做个炫酷的图片切换过度效果

做个炫酷的图片切换过度效果首先&#xff0c;今天是520节日。到了520这类为情侣准备的节日&#xff0c;小编都会感到一万点暴击……首先酸一波&#xff0c;搞点事情(蹭波热度)。给大家分享一个520特效页面&#xff1a;看完记得回来为小编点个赞哦&#xff01;这是案例请扫前言老…

《自然》:修复AI神经网络的缺陷

来源&#xff1a;王宏琳科学网博客我在上一篇《海外观察》博客中&#xff0c;介绍了纽约大学马库斯教授和戴维斯教授的新书《重启 AI&#xff1a;构建我们可以信任的人工智能》和图灵奖得主朱迪亚•珀尔的著作《为什么&#xff1a;关于因果关系的新科学》。这两本书都分析了以深…