首页 > 解决方案 > 如何将 Dataframe 中一列中值的最后 3 位拆分为两个新的 Dataframe?

问题描述

df=pd.DataFrame({'col1':[25021,25002,8002,40211,2232,""]})

    col1    
0   25021    
1   25002
2   8002
3   40211
4   2232
5   

我想得到以下内容,不太确定如何根据最后 3 位数字拆分为 col3 以及前面的任何内容为 col1

    col2   col3    
0   25     021       
1   25     002       
2   8      002      
3   40     211       
4   2      232 
5

标签: pythonpandas

解决方案


这是我的方法:

df['col2'] = df['col1'].astype(str).str[-3:]

df['col1'] = df['col1'].astype(str).str[:-3]

输出:

   col1 col2
0    25  021
1    25  002
2     8  002
3    40  211
4     2  232

推荐阅读