gpt4 book ai didi

python - 使用列中的部分字符串来计算和填充 Pandas 数据框中的另一列

转载 作者:太空宇宙 更新时间:2023-11-04 05:06:28 24 4
gpt4 key购买 nike

我在 pandas 数据框中有一列,其中包含如下值:

['3m5f Hcap', '6f Maiden', '7f Hcap', '2m6f Stks', '3m Hcap']

这些是指赛马的长度,例如 3m5f(3 英里 5 弗隆)相当于 29 弗隆。

我需要创建一个新列,将各种比赛长度转换为表示弗隆总数的整数。

所以上面就是

[29, 6, 7, 20, 24]

我什至不知道从哪里开始,任何想法表示赞赏!

最佳答案

假设您有一个数据框:

df = pd.DataFrame({"dist": ['3m5f Hcap', '6f Maiden', '7f Hcap', '2m6f Stks', '3m Hcap']})

df
# dist
#0 3m5f Hcap
#1 6f Maiden
#2 7f Hcap
#3 2m6f Stks
#4 3m Hcap

您可以提取 mile(假设m 表示mile)和furlongs 在单独的列中,然后将它们转换为 弗隆:

(df.dist.str.extract("(?:(?P<m>\d+)m)?(?:(?P<f>\d+)f)?", expand=False)
.fillna(0).astype(int).pipe(lambda df: df.m * 8 + df.f))

#0 29
#1 6
#2 7
#3 22
#4 24
#dtype: int64

关于python - 使用列中的部分字符串来计算和填充 Pandas 数据框中的另一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44337018/

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