gpt4 book ai didi

python - 获取一列对象的最后一个字符并将其作为数据框上的列 - pandas python

转载 作者:行者123 更新时间:2023-12-01 02:50:32 24 4
gpt4 key购买 nike

我有一个如下所示的数据框:

df=

A   B   D
a1 b1 9052091001A
a2 b2 95993854906
a3 b3 93492480190
a4 b4 93240941993

我想要什么:

df_resp=

A   B   D
a1 b1 001A
a2 b2 4906
a3 b3 0190
a4 b4 1993

我尝试过的:

for i in (0,len(df['D'])):
df['D'][i]= df['D'][i][-4:]

我得到的错误:

KeyError: 4906

此外,这需要很长时间,我认为应该有一种更快的方法来处理 pandas。

最佳答案

使用pd.Series.str用于向量化字符串操作的字符串访问器。这些比使用 apply 更受青睐。

如果 D 元素已经是字符串

df.assign(D=df.D.str[-4:])

A B D
0 a1 b1 001A
1 a2 b2 4906
2 a3 b3 0190
3 a4 b4 1993

如果没有

df.assign(D=df.D.astype(str).str[-4:])

A B D
0 a1 b1 001A
1 a2 b2 4906
2 a3 b3 0190
3 a4 b4 1993
<小时/>

您可以使用

就地更改
df['D'] = df.D.str[-4:]

关于python - 获取一列对象的最后一个字符并将其作为数据框上的列 - pandas python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44849484/

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