gpt4 book ai didi

python - 检查文本在 python 中是否右对齐

转载 作者:行者123 更新时间:2023-12-02 09:47:17 24 4
gpt4 key购买 nike

我有一个像这样的数据框:

  |number  |
1 |122 |
2 |345 |
3 | 456|
4 | 789|

我想把它改成:

  |number|
1 |nan|
2 |nan|
3 |456|
4 |789|

我只想要右对齐值

最佳答案

我认为您需要测试 Series.str.endswith 是否有空格,然后用 Series.mask 替换为 NaN ,通过 Series.str.strip 删除可能的跟踪空格并转换为 float :

df['number'] = df['number'].mask(df['number'].str.endswith(' ')).str.strip().astype(float)

或者:

df['number'] = df['number'].mask(df['number'].str[-1] == ' ').str.strip().astype(float)

print (df)
number
1 NaN
2 NaN
3 456.0
4 789.0

如果想要整数,可以通过在 pandas 0.24+ 中工作的 integer na 来实现:

m = df['number'].str.endswith(' ')
df['number'] = df['number'].mask(m).str.strip().astype(float).astype('Int64')

print (df)
number
1 NaN
2 NaN
3 456
4 789

关于python - 检查文本在 python 中是否右对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59497391/

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