python – pandas将列表拆分为带正则表达式的列
发布时间:2020-12-20 12:34:50 所属栏目:Python 来源:网络整理
导读:我有一个字符串列表: content01/09/15,10:07 - message101/09/15,10:32 - message201/09/15,10:44 - message3 我想要一个数据框,如: date message01/09/15,10:07 message101/09/15,10:32 message201/09/15,10:44 message3 考虑到列表中的所有字符串都以该
我有一个字符串列表:
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>[sS]+) - (?P<message>[sS]+)',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 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |