请教大佬们。数据处理需求,详情见下

2023-09-06 16:26:35 +08:00
 Illusionary2233
数据导出后是一个 txt 文件,该 txt 可能会包括多家机构的数据,
举个例子来说:需求一
数据第一行是表名,第二行是上下级的机构 ID ,总共占四列,如:上级:123456 下级:22333 第三行会有个分割线(转成 dataframe 占一列),第四行开始就是各行各列的数据,我需要提取出第二行的两个机构号并给数据(从第四行到数据的最后一行)增加两列分别表示两家机构。

需求二:
因为我拿到的 txt 文件可能会是多个表合在一起的结果,也就是包括不同机构,最后的效果就是一张表,然后第一行是标题,第二行开始是数据,数据中多了两列用来标明所属的两家机构

已完成的目标,对数据进行了清洗和筛选计算,但为了完成需求遇到了不少处理困难,比如机构号的检测和提取(因为除了第一张表,其他表不知道在第几行出现),提取出来后加到对应数据的两列中,在提取时使用 df.iterrows()方法会有缺失值,但填补缺失值后处理也会有困难。

想请问大佬们有遇到过处理放在 txt 文件中的多张表格数据然后提取信息最后转成 excel 的处理经验嘛
目前思路有限,恳请赐教!
1018 次点击
所在节点    Python
4 条回复
jianhuaMert
2023-09-06 17:38:47 +08:00
先只读第二行获取机构 ID ,然后直接 pandas 读 txt 跳过前四行再把机构 ID 加进去不就行了。
NoOneNoBody
2023-09-06 17:47:40 +08:00
pandas 可以用 StringIO 读入的
你可以先把 txt 拆分存入不同的 io 对象,各自读取、合并

当然也可以一次读入 txt ,然后找到机构所在行,处理并建 multi-index ,然后 drop 掉这些行
Illusionary2233
2023-09-07 09:16:11 +08:00
@jianhuaMert 因为一个 txt 中会有多张表,而且不同的表来自不同机构,所以解决思路是提取 txt 文件中每行的机构号加两列加到对应的数据中
Illusionary2233
2023-09-07 09:28:37 +08:00
@NoOneNoBody 好的,谢谢二位,我试一下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/971463

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX