Python 添加一列,将数值分为低中位数和高中位数?
如何将一列添加到它的一侧,以便根据列的值自动将列划分为组(75%) 例如:Python 添加一列,将数值分为低中位数和高中位数?,python,pandas,Python,Pandas,如何将一列添加到它的一侧,以便根据列的值自动将列划分为组(75%) 例如: pd.qcut几乎完全符合您的要求: number = pd.DataFrame(np.random.randint(1,100,20).reshape(20,1), columns=['Number to segement']) [37]中的:数字[“分位数”]=pd.qcut(数字[“数字到分段”],[0,25,75,1],标签=[“75%”) In[38]:数字 出[38]: 分段分位数的数字 0
pd.qcut
几乎完全符合您的要求:
number = pd.DataFrame(np.random.randint(1,100,20).reshape(20,1), columns=['Number to segement'])
[37]中的:数字[“分位数”]=pd.qcut(数字[“数字到分段”],[0,25,75,1],标签=[“75%”)
In[38]:数字
出[38]:
分段分位数的数字
0 53 25-75%
1 85 25-75%
2 95 >75%
3 96 >75%
4 60 25-75%
5 37 25-75%
6 32添加输入和预期输出的示例。
In [37]: number["quantile"] = pd.qcut(number["Number to segement"], [0, .25, .75, 1], labels=["<25%", "25-75%", ">75%"])
In [38]: number
Out[38]:
Number to segement quantile
0 53 25-75%
1 85 25-75%
2 95 >75%
3 96 >75%
4 60 25-75%
5 37 25-75%
6 32 <25%
7 42 25-75%
8 50 25-75%
9 32 <25%
10 30 <25%
11 51 25-75%
12 88 >75%
13 76 25-75%
14 10 <25%
15 51 25-75%
16 97 >75%
17 1 <25%
18 23 <25%
19 87 >75%