gpt4 book ai didi

python - Pandas 用正则表达式将列表分成几列

转载 作者:太空狗 更新时间:2023-10-29 22:04:38 26 4
gpt4 key购买 nike

我有一个字符串列表:

content
01/09/15, 10:07 - message1
01/09/15, 10:32 - message2
01/09/15, 10:44 - message3

我想要一个数据框,例如:

     date                message
01/09/15, 10:07 message1
01/09/15, 10:32 message2
01/09/15, 10:44 message3

考虑到我在列表中的所有字符串都以这种格式开头,我可以按 - 拆分,但我宁愿寻找一种更聪明的方法来做到这一点。

history = pd.DataFrame([line.split(" - ", 1) for line in content], columns=['date', 'message'])

(之后我会将日期转换为日期时间)

如有任何帮助,我们将不胜感激。

最佳答案

您可以使用 str.extract - 命名组可以成为列名

In [5827]: df['content'].str.extract('(?P<date>[\s\S]+) - (?P<message>[\s\S]+)', 
expand=True)
Out[5827]:
date message
0 01/09/15, 10:07 message1
1 01/09/15, 10:32 message2
2 01/09/15, 10:44 message3

详细信息

In [5828]: df
Out[5828]:
content
0 01/09/15, 10:07 - message1
1 01/09/15, 10:32 - message2
2 01/09/15, 10:44 - message3

关于python - Pandas 用正则表达式将列表分成几列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46928636/

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