2015-06-18 91 views
4

放置在其百分每個值考慮採用以下百分一個系列:在熊貓

> df['col_1'].describe(percentiles=np.linspace(0, 1, 20)) 

count  13859.000000 
mean   421.772842 
std  14665.298998 
min   1.201755 
0%    1.201755 
5.3%   1.430695 
10.5%   1.438417 
15.8%   1.466462 
21.1%   1.473050 
26.3%   1.500834 
31.6%   1.512218 
36.8%   1.542935 
42.1%   1.579845 
47.4%   1.647162 
50%   1.690612 
52.6%   1.749047 
57.9%   1.955589 
63.2%   2.344475 
68.4%   3.075641 
73.7%   4.466094 
78.9%   8.410964 
84.2%   14.998738 
89.5%   41.363612 
94.7%  162.865079 
100%  1511013.790233 
max  1511013.790233 
Name: col_1, dtype: float64 

我想獲得每行是在上面所做的計算分配到百分另一列col_2

我該怎麼做熊貓?

回答

5
df2 = pd.DataFrame(range(1000)) 
df2.columns = ['a1'] 
df2['percentile'] = pd.qcut(df2.a1,100, labels=False) 

還是離開了標籤,看看範圍


注意的是Python 3,與熊貓0.16.2(最新版本截止到今天),你需要使用list(range(1000))而不是range(1000)爲上面的工作。