Skip to main content
 首页 » 编程设计

python之使用 Pandas 拆分数字并为每个数字拆分创建新的单独列

2025年05月04日14xiaohuochai

你好,

我有一个包含这样一列的数据框,让我们假设有 1000 行,但这里有一个示例:

 A  
12 
24 
36 
48 

我希望将号码分成两个单独的号码。我希望输出看起来像这样:

 A    B    C 
12    1    2 
24    2    4 
36    3    6 
48    4    8 

如何使用 Pandas 和 Numpy 实现这一目标?帮助将不胜感激。 提前致谢!

请您参考如下方法:

使用floor和mod:

df['B'] = df['A'] // 10 
df['C'] = df['A'] % 10 
 
print (df) 
    A  B  C 
0  12  1  2 
1  24  2  4 
2  36  3  6 
3  48  4  8 

如果输入数据是字符串,则可以通过 [] 按位置进行索引:

print (df['A'].apply(type)) 
0    <class 'str'> 
1    <class 'str'> 
2    <class 'str'> 
3    <class 'str'> 
Name: A, dtype: object 
 
df['B'] = df['A'].str[0] 
df['C'] = df['A'].str[1] 
#if necessary convert all columns to integers 
df = df.astype(int) 
print (df) 
    A  B  C 
0  12  1  2 
1  24  2  4 
2  36  3  6 
3  48  4  8