python读取文本中数据并转化为DataFrame的实例


Posted in Python onApril 10, 2018

在技术问答中看到一个这样的问题,感觉相对比较常见,就单开一篇文章写下来。

从纯文本格式文件 “file_in”中读取数据,格式如下:

python读取文本中数据并转化为DataFrame的实例

需要输出成“file_out”,格式如下:

python读取文本中数据并转化为DataFrame的实例

数据的原格式是“类别:内容”,以空行“\n”为分条目,转换后变成一个条目一行,按照类别顺序依次写出内容。

建议读取后,使用pandas,把数据建立称DataFrame的表格。这样方便以后处理数据。但是原格式并不是通常的表格格式,所以要先做一些简单的处理。

#coding:utf8
import sys
from pandas import DataFrame  #DataFrame通常来装二维的表格
import pandas as pd      #pandas是流行的做数据分析的包
#建立字典,键和值都从文件里读出来。键是nam,age……,值是lili,jim……
dict_data={}
#打开文件
with open('file_in.txt','r')as df:
  #读每一行
  for line in df:
    #如果这行是换行符就跳过,这里用'\n'的长度来找空行
    if line.count('\n') == len(line):
      continue
    #对每行清除前后空格(如果有的话),然后用":"分割
    for kv in [line.strip().split(':')]:
      #按照键,把值写进去
      dict_data.setdefault(kv[0],[]).append(kv[1])
#print(dict_data)看看效果
#这是把键读出来成为一个列表
columnsname=list(dict_data.keys())
#建立一个DataFrame,列名即为键名,也就是nam,age……
frame = DataFrame(dict_data,columns=columnsname)
#把DataFrame输出到一个表,不要行名字和列名字
frame.to_csv('file_out0.txt',index=False,header=False)

以上这篇python读取文本中数据并转化为DataFrame的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python greenlet实现原理和使用示例
Sep 24 Python
Python 实现简单的电话本功能
Aug 09 Python
Python程序退出方式小结
Dec 09 Python
python实现websocket的客户端压力测试
Jun 25 Python
Django中使用CORS实现跨域请求过程解析
Aug 05 Python
python实现多线程端口扫描
Aug 31 Python
python pymysql链接数据库查询结果转为Dataframe实例
Jun 05 Python
python正则表达式 匹配反斜杠的操作方法
Aug 07 Python
Django自定义YamlField实现过程解析
Nov 11 Python
Python 无限级分类树状结构生成算法的实现
Jan 21 Python
python 使用openpyxl读取excel数据
Feb 18 Python
python自动化操作之动态验证码、滑动验证码的降噪和识别
Aug 30 Python
python实现百度语音识别api
Apr 10 #Python
Python Selenium Cookie 绕过验证码实现登录示例代码
Apr 10 #Python
浅谈pandas中Dataframe的查询方法([], loc, iloc, at, iat, ix)
Apr 10 #Python
python pandas dataframe 行列选择,切片操作方法
Apr 10 #Python
python3下实现搜狗AI API的代码示例
Apr 10 #Python
Python基于pycrypto实现的AES加密和解密算法示例
Apr 10 #Python
浅谈Pandas中map, applymap and apply的区别
Apr 10 #Python
You might like
PHP写杨辉三角实例代码
2011/07/17 PHP
PHP下打开phpMyAdmin出现403错误的问题解决方法
2013/05/23 PHP
php实现简单的上传进度条
2015/11/17 PHP
PHP数组编码gbk与utf8互相转换的两种方法
2016/09/01 PHP
Laravel中日期时间处理包Carbon的简单使用
2017/09/21 PHP
phpcmsv9.0任意文件上传漏洞解析
2020/10/20 PHP
刷新页面实现方式总结(HTML,ASP,JS)
2008/11/13 Javascript
jquery 插件开发 extjs中的extend用法小结
2013/01/04 Javascript
Node.js安装教程和NPM包管理器使用详解
2014/08/16 Javascript
jQuery在ul中显示某个li索引号的方法
2015/03/17 Javascript
Js制作点击输入框时默认文字消失的效果
2015/09/05 Javascript
Javascript编程中几种继承方式比较分析
2015/11/28 Javascript
require简单实现单页应用程序(SPA)
2016/07/12 Javascript
javascript 数组的正态分布排序的问题
2016/07/31 Javascript
JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)
2016/12/14 Javascript
vue中将网页打印成pdf实例代码
2017/06/15 Javascript
JavaScript实现二叉树的先序、中序及后序遍历方法详解
2017/10/26 Javascript
初学者AngularJS的环境搭建过程
2017/10/27 Javascript
javascript中的闭包概念与用法实践分析
2019/07/26 Javascript
JS实现音量控制拖动
2020/01/15 Javascript
[02:20]DOTA2中文配音宣传片
2013/05/22 DOTA
[02:36]DOTA2英雄基础教程 帕格纳
2014/01/20 DOTA
[03:01]完美盛典趣味短片 DOTA2年度最佳&拉胯英雄
2019/12/07 DOTA
Python读写文件方法总结
2015/06/09 Python
Python各类图像库的图片读写方式总结(推荐)
2018/02/23 Python
tensorflow 用矩阵运算替换for循环 用tf.tile而不写for的方法
2018/07/27 Python
django fernet fields字段加密实践详解
2019/08/12 Python
用Python生成HTML表格的方法示例
2020/03/06 Python
matplotlib自定义鼠标光标坐标格式的实现
2021/01/08 Python
CSS Grid布局教程之网格单元格布局
2014/12/30 HTML / CSS
css3类选择器之结合元素选择器和多类选择器用法
2017/03/09 HTML / CSS
Coach澳大利亚官方网站:美国著名时尚奢侈品牌
2017/05/24 全球购物
即时搜索数百万张门票:SeatsForEveryone.com
2018/08/26 全球购物
动态密码技术
2012/10/18 面试题
奥巴马经典演讲稿
2014/09/13 职场文书
小学四年级班务总结该怎么写?
2019/08/16 职场文书