繁体   English   中英

从空格分隔的字符串创建 Pandas DataFrame

[英]Create Pandas DataFrame from space separated String

我有一个字符串:

              C1     C2                       DATE     C4     C5         C6      C7
0            0.0    W04  2021-01-08 00:00:00+00:00      E    EUE         C1     157
1            0.0    W04  2021-01-08 00:00:00+00:00      E    AEU         C1     157
2            0.0    W04  2021-01-01 00:00:00+00:00      E   SADA         H1     747
3            0.0    W04  2021-01-04 00:00:00+00:00      E   SSEA         H1     747
4            0.0    W04  2021-01-05 00:00:00+00:00      E   GPEA         H1     747

它确实看起来像 Pandas DataFrame 因为它来自一个。 我需要将其转换为 Pandas DataFrame。

我尝试了以下方法:

pd.read_csv(StringIO(string_file),sep=r"\s+")

但它与列混淆并将 DATE 列分成 2 列。

首先,重新创建字符串:

s = """
              C1     C2                       DATE     C4     C5         C6      C7
0            0.0    W04  2021-01-08 00:00:00+00:00      E    EUE         C1     157
1            0.0    W04  2021-01-08 00:00:00+00:00      E    AEU         C1     157
2            0.0    W04  2021-01-01 00:00:00+00:00      E   SADA         H1     747
3            0.0    W04  2021-01-04 00:00:00+00:00      E   SSEA         H1     747
4            0.0    W04  2021-01-05 00:00:00+00:00      E   GPEA         H1     747
"""

现在,您可以使用Pandas.read_csv导入缓冲区:

from io import StringIO
df = pd.read_csv(StringIO(s), sep=r"\s\s+")

据我所知,这正是您正在寻找的 DataFrame :

生成的 DataFrame 的屏幕截图

您可能还希望将DATE列转换为datetime时间值:

df['DATE'] = df.DATE.astype('datetime64')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM