从混合 csv 文件中提取数据框

问题描述 投票:0回答:1

我有一个 csv 文件,其中包含大量信息。我想从该 csv 文件中将数据提取到 pandas 数据框中,跳过不必要的行。我无法使用跳过行,因为数据帧行的开头不固定。

在我想要使用的实际数据开始之前,列数据也没有固定,因此在将数据直接加载到数据框中时出现错误。

ParserError: Error tokenizing data. C error: Expected 5 fields in line 340, saw 6

例如:-

%% Capacity report
  A     B     C 
0 0     Null  Hello
1 0     1     2     3
2 ID    FN    LN    Address        State   Price
3 123   ABC   DEF   312 Main st.   CA       1001
4 345   DEF   HIJ   1008 Main st.  CA       1002

我想加载从ID开始到文件末尾的数据。

df = pd.read_csv('abc.csv')
for row in range(df.shape[0]):
    for col in range(df.shape[1]):
        if df.iat[row,col] == 'ID':
            row_start = row
            break
python pandas dataframe
1个回答
0
投票

一种解决方案是将文件作为字符串读取,并剪掉前导不需要的字符。然后,您可以使用 StringIO 引擎创建 pandas 数据框。

这个问题和答案可能对您有帮助: 从字符串创建 Pandas DataFrame

© www.soinside.com 2019 - 2024. All rights reserved.