numpy中loadtxt 的用法详解


Posted in Python onAugust 03, 2018

numpy中有两个函数可以用来读取文件,主要是txt文件, 下面主要来介绍这两个函数的用法

第一个是loadtxt, 其一般用法为

numpy.loadtxt(fname, dtype=, comments='#', delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False, ndmin=0)

上面给出了loadtxt所有的关键字参数, 这里我们可以来一一解释并给出示例

这里我们使用的是jupyter notebook, 可以实现交互式的界面操作

%%writefile test.txt # 这是用来写入文件的代码
1 2 3 4 
2 3 4 5
3 4 5 6
4 5 6 7

首先给出最简单的loadtxt的代码

import numpy as np
a = np.loadtxt('test.txt')#最普通的loadtxt
print(a)

实际上就是直接写文件名, 其他关键字参数都是默认的。输出为

[[1. 2. 3. 4.]
 [2. 3. 4. 5.]
 [3. 4. 5. 6.]
 [4. 5. 6. 7.]]

a为浮点数的原因为Python默认的数字的数据类型为双精度浮点数

%%writefile test.txt
A B C
1 2 3
4 5 6
7 8 9

a = np.loadtxt('test1.txt', skiprows=1, dtype=int)
print(a)

这里的skiprows是指跳过前1行, 如果设置skiprows=2, 就会跳过前两行,  这里的输出为

[[1 2 3]
 [4 5 6]
 [7 8 9]]

%%writefile test.txt
A B C
1 2 3
# AAA
4 5 6
7 8 9

a = np.loadtxt('test2.txt', dtype=int, skiprows=1, comments='#')
print(a)

这里的comment的是指, 如果行的开头为#就会跳过该行, 这里输出为

[[1 2 3]
 [4 5 6]
 [7 8 9]]

%%writefile test.txt
A B C
1, 2, 3
# AA AAA
4, 5, 6
7, 8, 9

(a, b) = np.loadtxt('test.txt', dtype=int, skiprows=1, comments='#', delimiter=',', usecols=(0, 2), unpack=True)
print(a, b)

这里的usecols是指只使用0,2两列, unpack是指会把每一列当成一个向量输出, 而不是合并在一起。

[1 4 7] [3 6 9]

最后介绍converters参数, 这个是对数据进行预处理的参数, 我们可以先定义一个函数, 这里的converters是一个字典, 表示第零列使用函数add_one来进行预处理

def add_one(x):
return int(x)+1#注意到这里使用的字符的数据结构
(a, b) = np.loadtxt('test.txt', dtype=int, skiprows=1, converters={0:add_one}, comments='#', delimiter=',', usecols=(0, 2), unpack=True)
print(a, b)

输出结果为:

[2 5 8] [3 6 9]

补一个GitHub的jupyter-notebook链接...

https://github.com/ChangChunHe/PythonLearning/blob/master/Numpy/8.loadtxt_and_genfromtxt.ipynb

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 中文字符串的处理实现代码
Oct 25 Python
Python使用turtule画五角星的方法
Jul 09 Python
Python利用operator模块实现对象的多级排序详解
May 09 Python
Python 对象中的数据类型
May 13 Python
Python简单实现socket信息发送与监听功能示例
Jan 03 Python
python实现五子棋小游戏
Mar 25 Python
基于python实现的百度新歌榜、热歌榜下载器(附代码)
Aug 05 Python
解决Tensorboard 不显示计算图graph的问题
Feb 15 Python
Keras中 ImageDataGenerator函数的参数用法
Jul 03 Python
python 获取剪切板内容的两种方法
Nov 28 Python
Python使用Turtle模块绘制国旗的方法示例
Feb 28 Python
Python基础数据类型tuple元组的概念与用法
Aug 02 Python
matplotlib给子图添加图例的方法
Aug 03 #Python
matplotlib调整子图间距,调整整体空白的方法
Aug 03 #Python
Numpy之文件存取的示例代码
Aug 03 #Python
Python数据分析matplotlib设置多个子图的间距方法
Aug 03 #Python
详解python实现识别手写MNIST数字集的程序
Aug 03 #Python
opencv python 基于KNN的手写体识别的实例
Aug 03 #Python
Flask实现图片的上传、下载及展示示例代码
Aug 03 #Python
You might like
php MsSql server时遇到的中文编码问题
2009/06/11 PHP
基于PHP+jQuery+MySql实现红蓝(顶踩)投票代码
2015/08/25 PHP
php批量删除超链接的实现方法
2015/10/19 PHP
js 对象是否存在判断
2009/07/15 Javascript
原生javascript兼容性测试实例
2013/07/01 Javascript
js(JavaScript)实现TAB标签切换效果的简单实例
2014/02/26 Javascript
理解JavaScript的变量的入门教程
2015/07/07 Javascript
JS+CSS实现下拉刷新/上拉加载插件
2017/03/31 Javascript
js模拟支付宝密码输入框
2017/04/11 Javascript
zTree树形菜单交互选项卡效果的实现方法
2017/12/25 Javascript
vue+element-ui+ajax实现一个表格的实例
2018/03/09 Javascript
通过js实现压缩图片上传功能
2020/02/25 Javascript
Python实现的数据结构与算法之基本搜索详解
2015/04/22 Python
Python实现的数据结构与算法之快速排序详解
2015/04/22 Python
Django学习笔记之Class-Based-View
2017/02/15 Python
PyQt5利用QPainter绘制各种图形的实例
2017/10/19 Python
django将图片上传数据库后在前端显式的方法
2018/05/25 Python
让代码变得更易维护的7个Python库
2018/10/09 Python
Python实现的读取文件内容并写入其他文件操作示例
2019/04/09 Python
python 消除 futureWarning问题的解决
2019/12/25 Python
使用Python实现将多表分批次从数据库导出到Excel
2020/05/15 Python
在Keras中实现保存和加载权重及模型结构
2020/06/15 Python
Python实现像awk一样分割字符串
2020/09/15 Python
Python抖音快手代码舞(字符舞)的实现方法
2021/02/07 Python
深入理解css属性的选择对动画性能的影响
2016/04/20 HTML / CSS
美国正版电视节目和电影在线观看:Hulu
2018/05/24 全球购物
马来西亚在线购物市场:PGMall.my
2019/10/13 全球购物
欧姆龙医疗欧洲有限公司:Omron Healthcare Europe B.V
2020/06/13 全球购物
企业治理工作自我评价
2013/09/26 职场文书
初入社会应届生求职信
2013/11/18 职场文书
施工资料员的岗位职责
2013/12/22 职场文书
实验教师岗位职责
2014/02/13 职场文书
2014年党员加强作风建设思想汇报
2014/09/15 职场文书
北京离婚协议书范文2014
2014/09/29 职场文书
导游词之南昌滕王阁
2019/11/29 职场文书
单身狗福利?Python爬取某婚恋网征婚数据
2021/06/03 Python