python快速整理excel_使用pandas包用python清理excel数据
我用pandas使用pd.read_excel将xls文件读入
Python
我正在努力清理我的数据,但我已经离开了我的联盟.
每条记录之间都有一个空行.在示例pic中,它优于第4,9和11行.
有一个注释列,在示例中指定(请参阅链接)为“col_F”.每条记录至少有一个包含文本的单元格.创建此xls文件的人将更长的注释拆分为多个单元格.
我想将col_F中用于特定记录的所有数据连接到一个单元格中.
一旦我弄清楚如何正确连接col_F,我也会删除空白记录.
我使用的是Python 3.5.0版本,numpy 1.12.0和pandas 0.19.2
这是我到目前为止:
import numpy as np
import pandas as pd
data = pd.read_excel("C:/blah/blahblah/file.xls", header=0, nrows=10000)
df = pd.DataFrame(data)
我感谢任何建议或见解!!
谢谢!
原始数据的外观如何:
更新:
这是我加载到Python时数据的外观
这就是我期望的结果:
最佳答案 这是我在@Boud在评论中解释的原始解决方案.我首先在这里创建示例数据:
df = pd.DataFrame([
['record1', '10', 'date1', 'optional', 'comment'],
['', '', '', '', 'comment continued'],
['', '', '', '', ''],
['record2', '100', 'date2', '', 'comment'],
['', '', '', '', 'comment continued'],
['', '', '', '', 'comment continued'],
['', '', '', '', 'comment continued'],
['', '', '', '', ''],
['record3', '10000', 'date3', '', 'comment']],
columns=['col_A', 'col_B', 'col_C', 'col_D', 'col_F'])
df.replace('', np.nan, regex=True, inplace=True)
请注意,此处的空白应填充NaN而不是空格.基本上,首先,您可以使用dropna删除不首先使用的行.
df.dropna(axis=0, how='all', inplace=True) # drop NaN by row
然后,您可以通过以前的记录填写col_A.
new_col = []
row_name = ''
for r in df.col_A:
if not pd.isnull(r):
row_name = r
new_col.append(row_name)
df.col_A = new_col
之后,您可以通过将groupby函数应用于A列来对其他列进行分组,并通过连接字符串来聚合其他列,如下所示.
gr = df.groupby('col_A')
def join_str(x):
x = list(map(str, x))
x = [e for e in x if str(e) != 'nan']
return ' '.join(x)
gr.agg({'col_B' : join_str,
'col_C': join_str,
'col_D': join_str,
'col_F': join_str}).reset_index()
python快速整理excel_使用pandas包用python清理excel数据相关推荐
- python快速整理excel_一行一行整理EXCEL表太麻烦,试试python脚本,1秒写入数据
最近工作中,要整理数据,本来是以sql脚本录入,但是id.barcode等数据不好整理,因为这几个字段要唯一. 所以想到用EXCEL表整理数据,再导入数据库中. 整理的过程中,发现EXCEL一行一行的 ...
- python软件怎么使用-Python快速入门—如何选择使用包管理工具?
原标题:Python快速入门-如何选择使用包管理工具? 源 | cnblogs文 | 包子 在Python环境中已经有很多成熟的包,可以通过安装这些包来扩展我们的程序. 例如,很多时候Python开发 ...
- python快速开发框架_GitHub - lee2029/pyui4win: 一个用python实现业务逻辑、用xml和html/css/js描述界面的windows程序的快速开发框架...
pyui4win 一个用python实现业务逻辑.用xml和html/css/js描述界面的windows程序的快速开发框架 应用框架 1.pyui4win根据xml/html/js/css创建界面 ...
- python词云需要导入什么包_[python] 词云:wordcloud包的安装、使用、原理(源码分析)、中文词云生成、代码重写...
词云,又称文字云.标签云,是对文本数据中出现频率较高的"关键词"在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思.常见于博客. ...
- python快速编程入门课后程序题答案-Python编程从零基础到项目实战 完整PPT+习题答案...
Python编程从零基础到项目实战是一本介绍Python相关知识的Python基础教程,内容涉及算法.Python数据分析.图形处理.Web开发.科学计算.项目管理.人工智能.Python爬虫等.其中 ...
- 利用Python获取某游戏网站热销商品并用pands进行Excel数据存储
因为要求,这个不知名的网站用S代替了. 有刚刚使用S的用户,不知道玩什么游戏怎么办?往往热销商品会使他们最合适的选择. 当然,某个第三方的网站上面的数据会更详细,什么游戏用户活跃度高, ...
- 【Python学习】 - 如何将Pandas包中的groupby分组类型转换成DataFrame(一步就足够了)
输入:df_Grp,类型是pandas.core.groupby.generic.DataFrameGroupBy 我们先来学习一下如何将分组后的其中一个分组给转换成DataFrame类型: tmp ...
- 【Python】一篇文章学习Pandas包 Pandas Series、DataFrame 对比学习
一.Series与python字典对比 Series兼并了数组和字典的功能,既可以看作是一种特殊的字典,又可以看成是通用的Numpy数组.既可以支持数组的切片操作等,还可以运用字典获取values的方 ...
- python快速整理文件_Python实现自动整理文件
工作上的文档和资料好几个月没整理了,因为平常太忙都是随手往桌面丢.整个桌面杂乱无章全是文档和资料.几乎快占满整个屏幕了,所有我必须要整理一下了.但是手动整理太费时间了,于是我想到了python.直接上 ...
最新文章
- 深度学习先驱 Yann LeCun 被骂到封推!AI 偏见真该甩锅数据集?
- Vue 中定义方法页面上使用
- java 中 的 =,java 中的 |=、=、^=
- lisp提取长方形坐标_语义SLAM | 深度学习用于特征提取 : SuperPoint(一)
- MATLAB保存数据为dat格式,[转载] Matlab中的数据以.txt或.dat格式保存
- 20款最优秀的JavaScript编辑器
- 常用的NoSQL数据库
- OpenCv学习篇——图像中值滤波算法
- Tableau学习摘录总结①(层次、聚合度和颗粒度层次、聚合度和颗粒度,字段(离散和连续),小建议)
- Bugku之秋名山老司机
- 小学计算机四年级教学计划,小学信息技术四年级第二学期教学计划
- [css] css 3d 动画,跟随鼠标移动做球形旋转
- 计算机正确坐姿,[图文]办公室必知:电脑族正确坐姿细解
- penGL入门学习(六)
- Fanvas将旧网站的swf动画转为canvas,以解决移动端swf动画无法显示问题
- 粒子群算法的寻优算法-非线性函数极值寻优
- 惠普 HPE D380 G9 做raid1+0并安装ESXI6.7
- Edge 联动 VsCode,这功能爱了
- 信号处理中的低通、高通、带通、带阻滤波器
- python中迭代是什么意思_Python中的“迭代”详解
热门文章
- sql的error如何查看是什么故障_什么是420mA控制回路?常见故障如何排查?
- wince工业平板电脑_如何防止工业平板电脑温度过高?
- 彩云小译怎么翻译网页_谷歌、百度、有道做不到的,统统交给这5款翻译工具!...
- Hadoop2.7.3+HBase1.2.5+ZooKeeper3.4.6搭建分布式集群环境
- 推荐一位BAT数据大神!(附联系方式)
- python 类装饰器和函数装饰器区别_python进阶之装饰器之4在类中定义装饰器,将装饰器定义为类,两者的区别与联系...
- qimage加载bmp图片_批量修改图片大小,我发现了最简单的方法!
- 贝叶斯规则(Bayes’ rule)
- transient-java 关键字
- 组件 DataList 和 ObjectDataSource