首页 > 解决方案 > 如何将此列表对象转换为数据框?

问题描述

我有一些 lokos 喜欢的东西(称为线条)

['                id\t    Name\t    Type\t      User\t     Q\t             country\t       Final-score\t       Progress\t                       website',
 'abcde\t                 jen\t      engineer\t  jenabc\t           RUNNING\t         UK\t             75%\t                                N/A',
 'fres\t        Penny\t               dr\t     dr123\t           RUNNING\t         DENMARK\t             67%\t                                N/A'] 

语音标记中以“,”分隔的每一行都是数据帧行。但是我无法转换为数据框。

new_df = pd.read_csv(StringIO(",".join(lines[1:])),sep = "\t") 

我做 [1:] 因为第一行只是一个评论。我得到错误:ParserError: Error tokenizing data. C error: Expected 963 fields in line 3, saw 1099

我希望我的 datframe 的第一行是标题,其余的是由 \t 分隔的内容。我怎样才能做到这一点?

标签: pythonhtmlpandasparsingstringio

解决方案


df = pd.read_csv(StringIO("\n".join(lines)), sep=r"\s+")
print(df)

印刷:

      id   Name      Type    User        Q  country Final-score  Progress  website
0  abcde    jen  engineer  jenabc  RUNNING       UK         75%       NaN      NaN
1   fres  Penny        dr   dr123  RUNNING  DENMARK         67%       NaN      NaN

推荐阅读