Python 文本文件内容批量抽取实例
时间:2018-12-10
今天小编就为大家分享一篇Python 文本文件内容批量抽取实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
Python新手编写脚本处理数据,各种心酸各种语法查找,以此留念!
原始数据格式如下图所示:
这里是一个人脸测试数据,其中每行第一个为测试图片编号,后面为Top 7图片编号及其对应的评分,即与测试图片的相似度度量结果。我们这里的目的是将每行Top 7对应的评分数据抽取出来,并且将评分第二的数值与一个阈值(这里是0.7)进行比较,超过阈值表示此次测试成功,结果为正样本,记为1,否则置0。并最终将其保存至另一个文本文件用于作为机器学习模型的训练样本数据。
Python脚本处理后的文件格式如下所示:
对应的Python代码如下所示,附有小白详细注释。
# -*- coding: cp936 -*- import re import linecache filename = 'face_test_data.txt' with open(filename, 'r') as f: line = f.readline() while line: eachline = line.split()###按行读取文本文件 #print eachline 返回一个列表,以空格作为元素拆分标识 #print line 返回的是一整行数据,相当于一个字符串元素 count = len(eachline)#返回列表长度,即列表元素数目 n = 0 element = []#初始化空列表用于存储所需评分数据 while n < count: elem_index = eachline[n:n+1] #类型为列表 #print elem_index, len(elem_index[0]) #print elem_index 返回类型为列表 if len(elem_index[0]) > 24: element.append(elem_index[0][25:]) #element = [qiege(elem_index[n]) for elem_index in eachline] n=n+1 #print element[1] #概率数值列表 if element[1] >= '0.7': element.append(1) #print '1' else: element.append(0) #print '0' #生成每行末尾有\t文件 ''' file = open('preprocess.txt', 'a') for i in range(len(element)): file.write(str(element[i])+'\t') file.write('\n') file.close() ''' #生成每行末尾无\t文件,可直接用于np.loadtxt()读取文本生成矩阵数据 file = open('_preprocess.txt', 'a') for i in range(len(element)-1): file.write(str(element[i])+'\t') file.write(str(element[-1])+'\n') #file.write('\n') file.close() line = f.readline()
以上这篇Python 文本文件内容批量抽取实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
- HDUOJ----1301 Jungle Roads
- try语句...
- HDUOJ---1233还是畅通工程
- HDUOJ---1863畅通工程
- HDUOJ---1879 继续畅通工程
- MySQL命令行工具:percona-toolkit安装使用初探
- 解决Nginx配置http2不生效,谷歌浏览器仍然采用http1.1协议问题
- 海量数据切分抽取的实践场景(r11笔记第43天)
- 使用shell自动化诊断性能问题(一)(r11笔记第41天)
- Data Guard实现故障自动切换(二)(r11笔记第40天)
- Oracle Data Guard延迟的原因(r11笔记第69天)
- 一个细小的空间问题触发的报警(r11笔记第68天)
- MySQL误操作数据恢复的简单实践(r11笔记第67天)
- Oracle 12c中JOB运行失败的简单处理(r11笔记第66天)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- WPF 绑定继承的样式提示 只能根据带有基类型 IFrameworkInputElement 的目标类型的 Style 样式
- 29.opengl高级光照-视差贴图
- SpringBoot集成Mybatis开启下划线格式的数据自动转换成小驼峰格式
- WPF 列表右键菜单比较符合 MVVM 的命令绑定方法
- Group Sample:一个简单有效的目标检测涨点Trick
- PyTorch版CenterNet数据加载解析
- WPF 使用 HandyControl 给 ListView 添加漂亮的表头效果
- kali2020 忘记密码
- 低比特量化之DoreFa-Net理论与实践
- 不用数组求多个数的最小值
- 小程序 Tip | 文档、环境、开发工具界面与特性
- 大佬的思路就是不一样,这是我见过最简洁又清晰的SSM框架整合
- SQL Server重置自增的值为0
- 被经理邀请去“爬山”,只是因为我写错了一条SQL语句?
- Maven环境配置-必会