gpt4 book ai didi

python - 在 Pandas 系列中拆分字符串和整数 - Python

转载 作者:行者123 更新时间:2023-12-04 13:07:32 27 4
gpt4 key购买 nike

我在 Pandas 数据框中有一列,“电影标题”和“年份”(例如“玩具总动员 (1995)”)都在同一个字符串中。我必须将它们分成 2 个不同的列,当然年份必须是整数。我尝试使用这种方法(如下),但年份仍然是“对象”类型,因为它有括号。此外,它不适用于一部电影(还有一个标题)...

split_movie = movies["Movie"].str.rsplit(" ", n = 1, expand=True)
movies["Movie Title"] = split_movie[0]
movies["Movie Year"] = split_movie[1]

我不知道我是否可以使用 pd.year 方法,或者我是否必须通过创建列表来拆分 Python 中的字符串...

感谢您的帮助!

最佳答案

使用str.extractall:

>>> df.join(df['Movie'].str.extractall(r'\s*(.*\S)\s*\((\d{4})\)') \
.rename(columns={0: 'Movie Title', 1: 'Movie Year'}) \
.reset_index(drop=True))

Movie Movie Title Movie Year
0 Toy Story (1995) Toy Story 1995

@Bill 增强了正则表达式。

关于python - 在 Pandas 系列中拆分字符串和整数 - Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68696327/

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