python数据框填满

时间:2017-06-20 19:32:37

标签: python excel dataframe

     1   
0   an     
1   df     
2   0       
3   sdg    
4   gd     
5   dg     
6   0       
7   dc     
8   0      
9   dcd    
10  ds      
11  1    
12  sdg  
13  ds   
14  1    
15  sd   
16  sg   
17  2    
18  dsg  
19  sdg  
20  dfg  
21  2    

我想问一下如何使用上面的数据帧生成以下数据帧,根据第一列生成第二列。 (就像填写excel一样,但很多次)

     1   2
0   an   0  
1   df   0  
2   0    0   
3   sdg  0  
4   gd   0  
5   dg   0  
6   0    0   
7   dc   0  
8   0    0  
9   dcd  1  
10  ds   1   
11  1    1
12  sdg  1
13  ds   1
14  1    1
15  sd   2
16  sg   2
17  2    2
18  dsg  2
19  sdg  2
20  dfg  2
21  2    2 

这里只是一些例子,第二列中的最大数字是520,第二列中的数字是连续的并且是有序的。

1 个答案:

答案 0 :(得分:1)

假设您的断点是数字,并且您想填充字符串的值:

df[2] = pd.to_numeric(df[1], errors='coerce').bfill().astype('int')

df
Out: 
      1  2
0    an  0
1    df  0
2     0  0
3   sdg  0
4    gd  0
5    dg  0
6     0  0
7    dc  0
8     0  0
9   dcd  1
10   ds  1
11    1  1
12  sdg  1
13   ds  1
14    1  1
15   sd  2
16   sg  2
17    2  2
18  dsg  2
19  sdg  2
20  dfg  2
21    2  2