【问题标题】:python: convert rows formatted file in csv files to import in pandas dataframepython:将csv文件中的行格式文件转换为导入pandas数据框
【发布时间】:2018-02-27 20:45:57
【问题描述】:

我有很多这样格式化的txt文件:

oranges
apples
ananas
bananas

23
45
65
67

45
46
54
34

45
67
54
34

....... 不同文件的行数可以改变...

如何获取以这种方式格式化的逗号分隔文件?:

oranges apples ananas bananas
23 45 65 67
45 46 54 34
45 67 54 34

............

所以我可以在 pandas 数据框中使用数据?

到目前为止我的代码尝试:

import pandas as pd
url = "http://www.ererreer.com/eeeee.csv"
a = pd.read_csv(url)

【问题讨论】:

  • 你尝试了什么?你遇到什么问题了吗?尝试谷歌搜索如何在 Python 中读取文件,逐行处理数据。如何修改和处理列表和字符串。这些都是您在尝试实现此目标之前应首先学习的基本知识。

标签: python pandas


【解决方案1】:

使用支持空拆分的较新的regex 模块:

import regex as re
rx = re.compile(r'(?V1)^$', re.M)

csv_like = "\n".join(
       [part.strip().replace('\n', ',') 
        for part in rx.split(data) if part])
print(csv_like)


这产生
oranges,apples,ananas,bananas
23,45,65,67
45,46,54,34
45,67,54,34

然后可以通过管道传输到pandas 数据帧中。

【讨论】:

    猜你喜欢
    • 2013-01-08
    • 1970-01-01
    • 2019-04-13
    • 2016-06-01
    • 2020-11-11
    • 2016-02-18
    • 2012-09-16
    • 2018-03-06
    • 2019-08-15
    相关资源
    最近更新 更多