Numpy数组数据文件的读写
一、引言
读写数据文件的重要性就不必多说了。
二、读取列表形式数据的文件
1、我们写几行CSV格式(列表形式,两值之间逗号隔开)的数据。
id,height,age
1,175,20
2,168,18
3,177,30
4,142,12
使用genfromtxt()函数读取数据。接收三个参数:文件名,分隔符,是否有列标题
In [4]: a = np.genfromtxt('test.csv',delimiter=',',names=True)
In [5]: a
Out[5]:
array([( 1., 175., 20.), ( 2., 168., 18.), ( 3., 177., 30.),
( 4., 142., 12.)],
dtype=[('id', '<f8'), ('height', '<f8'), ('age', '<f8')])
这个函数的包含两层循环:第一层循环每一行,第二层循环将每一行中的多个值分开后转化,一次插入所创建的数组。优点是能够处理文件中缺失的数据(Nan)。
2、我们试图删除几个元素看看
id,height,age
1,175,
2,168,18
,177,30
4,,12
In [6]: a = np.genfromtxt('test.csv',delimiter=',',names=True)
In [7]: a
Out[7]:
array([( 1., 175., nan), ( 2., 168., 18.), ( nan, 177., 30.),
( 4., nan, 12.)],
dtype=[('id', '<f8'), ('height', '<f8'), ('age', '<f8')])
可见,genfromtxt()函数将缺失的数据填充为nan值(应该是no a number)
3、获取某行或者某列
In [8]: a[0]
Out[8]: ( 1., 175., nan) In [9]: a['height']
Out[9]: array([ 175., 168., 177., nan])
三、二进制文件读写
save()已二进制格式保存数据,参数:文件名(不用后缀),数据。
load()从二进制文件读取数据,参数:文件名(带后缀)
1.执行sava()后,在本目录创建了my_data.npy二进制文件
In [10]: data = np.random.random((3,3)) In [11]: data
Out[11]:
array([[ 0.35264296, 0.81619681, 0.24089159],
[ 0.31230919, 0.14782997, 0.53526203],
[ 0.5505135 , 0.64876637, 0.17538648]]) In [12]: np.save('my_data',data)
2、二进制文件数据读取,以文件名作为参数,并带上.npy扩展名
In [13]: np.load('my_data.npy')
Out[13]:
array([[ 0.35264296, 0.81619681, 0.24089159],
[ 0.31230919, 0.14782997, 0.53526203],
[ 0.5505135 , 0.64876637, 0.17538648]])
Numpy数组数据文件的读写的更多相关文章
- Python基础 | 数据文件的读写
目录 txt txt的读入 txt的写出 csv xls\xlsx 在线网页数据 常用的工具 爬虫的步骤 pdf pdfrw PyPDF2 提取文档信息 word文档 其他统计软件生成文件 本文总结使 ...
- 营销MM让我讲MySQL日志顺序读写及数据文件随机读写原理
摘要:你知道吗,MySQL在实际工作时候的两种数据读写机制? 本文分享自华为云社区<MySQL日志顺序读写及数据文件随机读写原理>,作者:JavaEdge . MySQL在实际工作时候的两 ...
- Java 对不同类型的数据文件的读写操作整合器[JSON,XML,CSV]-[经过设计模式改造](2020年寒假小目标03)
日期:2020.01.16 博客期:125 星期四 我想说想要构造这样一个通用文件读写器确实不容易,嗯~以后会添加更多的文件类型,先来熟悉一下文件内容样式: <?xml version=&quo ...
- numpy数组之读写文件
目录 通过 numpy 读写 txt 或 csv 文件 通过 numpy 读写 npy 或 npz 文件 读写 npy 文件 读写 npz 文件 通过 h5py 读写 hdf5 文件 简单读取 通过切 ...
- python : 将txt文件中的数据读为numpy数组或列表
很多时候,我们将数据存在txt或者csv格式的文件里,最后再用python读取出来,存到数组或者列表里,再做相应计算.本文首先介绍写入txt的方法,再根据不同的需求(存为数组还是list),介绍从tx ...
- Numpy用于数组的文件输入输出
这一章比较简单,内容也比较少.而且对于文件的读写,还是使用pandas比较好.numpy主要是读写文本数据和二进制数据的. 将数组以二进制的格式保存到硬盘上 主要的函数有numpy.save和nump ...
- java byte【】数组与文件读写(增加新功能)
今天在测试直接写的文章: java byte[]数组与文件读写 时,想调用FileHelper类对字节数组以追加的方式写文件,结果无论怎样竟然数据录入不全,重新看了下文件的追加模式,提供了两种方式: ...
- 007 numpy数组文件的存取
不知道这个有没有用,都整理了一番. 一:数组以二进制格式进行存储 1.说明 np.save与np.load是读写磁盘数组数据的两个重要函数. 默认情况下,数组以压缩的原始二进制格式保存在扩展名为npy ...
- MATLAB中文件的读写和数据的导入导出
http://blog.163.com/tawney_daylily/blog/static/13614643620111117853933/ 在编写一个程序时,经常需要从外部读入数据,或者将程序运行 ...
随机推荐
- 2018 大湾区(深圳) .NET技术分享交流会 第一期
.NET Core 2.1 已于2018年5月30日正式发布,邀请粤港澳大湾区.NET技术专家和从业人员,一起分享与交流.NET技术的发展方向,提高粤港澳大湾区.NET技术交流氛围,挖掘.NET高级人 ...
- 【二代示波器教程】第12章 示波器设计—DAC信号发生器的实现
第12章 示波器设计—DAC信号发生器的实现 本章节为大家讲解二代示波器中信号发生器的实现.这个功能还是比较实用的,方便为二代示波器提供测试信号.实现了正弦波,方波和三角波的频率,幅度以及占 ...
- 七种经典排序算法及Java实现
排序算法稳定性表示两个值相同的元素在排序前后是否有位置变化.如果前后位置变化,则排序算法是不稳定的,否则是稳定的.稳定性的定义符合常理,两个值相同的元素无需再次交换位置,交换位置是做了一次无用功. 下 ...
- Mysql索引最左匹配原则
先来看个例子: 1. 示例1:假设有如下的一张表: DROP TABLE IF EXISTS testTable; CREATE TABLE testTable ( ID BIGINT NOT NUL ...
- [Swift]LeetCode130. 被围绕的区域 | Surrounded Regions
Given a 2D board containing 'X' and 'O' (the letter O), capture all regions surrounded by 'X'. A reg ...
- [Swift]LeetCode551. 学生出勤纪录 I | Student Attendance Record I
You are given a string representing an attendance record for a student. The record only contains the ...
- [Swift]LeetCode636. 函数的独占时间 | Exclusive Time of Functions
Given the running logs of n functions that are executed in a nonpreemptive single threaded CPU, find ...
- [Swift]LeetCode1023. 驼峰式匹配 | Camelcase Matching
A query word matches a given pattern if we can insert lowercase letters to the pattern word so that ...
- linux字符测试以及for循环
1.字符测试 常用的测试字符的命令: == .=都表示测试字符相等,格式为[ A = B ]需要注意的是变量与等号之间需要有空格,不然测试的结果不正确示例如下 若字符与等号不加空格,假设变量A=ab ...
- mysql逆向生成 java 实体类
import java.io.File; import java.io.FileWriter; import java.io.PrintWriter; import java.sql.Connecti ...