gpt4 book ai didi

python - 使用Pandas将CSV读取到具有不同行长的dataFrame中

转载 作者:行者123 更新时间:2023-12-04 12:16:35 28 4
gpt4 key购买 nike

所以我有一个看起来像这样的CSV:

1 | 01-01-2019 | 724
2 | 01-01-2019 | 233 | 436
3 | 01-01-2019 | 345
4 | 01-01-2019 | 803 | 933 | 943 | 923 | 954
5 | 01-01-2019 | 454
...

当我尝试使用以下代码生成dataFrame时。
df = pd.read_csv('data.csv', header=0, engine='c', error_bad_lines=False)

它仅将具有3列的行添加到df(上方的第1、3和5行)

其余被认为是“坏行”,给我以下错误:
Skipping line 17467: expected 3 fields, saw 9

如何在csv中创建一个包含 所有数据的数据框,可能只是将空单元格填充为null?还是在添加到df之前必须声明最大行长?

谢谢!

最佳答案

如果仅使用pandas,请逐行读取,然后处理分隔符。

import pandas as pd

df = pd.read_csv('data.csv', header=None, sep='\n')
df = df[0].str.split('\s\|\s', expand=True)

0 1 2 3 4 5 6
0 1 01-01-2019 724 None None None None
1 2 01-01-2019 233 436 None None None
2 3 01-01-2019 345 None None None None
3 4 01-01-2019 803 933 943 923 954
4 5 01-01-2019 454 None None None None

关于python - 使用Pandas将CSV读取到具有不同行长的dataFrame中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55129640/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com