使用 python 如何计算 quartile/percentile 并给出创建新列进行分析的标准?
using python how to calculate quartile/percentile & gives criteria for create a new column for analysis?
我有这样的数据:
Village Workers
Takali 127
Dhokari 84
Aagar 10
Gardhani 122
Khanapur 65
Ambikanagar 45
Pi.Khand 120
Pangri 105
Dhagewadi 32
Sherewadi 34
Shindwad 42
我想创建一个新列,我必须在其中使用百分位数方法定义小、中和大级别。
例如:使用excel命令=PERCENTILE(Data numbers, 1/3)将得到43,
and =PERCENTILE(Data numbers, 2/3) 将给出 98 .
所以,我想在 python、
中使用 1/3 和 2/3 百分位数
我想做像
这样的标准
如果 Workers < = 1/3 百分位数值将被定义为 Small
如果工人 < =2/3 百分位值将被定义为中
IF Workers > 2/3 Percentile 值将被定义为大
我不知道如何在 python 中执行此操作,我知道如何使用 excel。
你能帮我解决 python 中的这个问题吗?
使用qcut
,只需要改变等级顺序:
import pandas as pd
df['level'] = pd.qcut(df['Workers'], 3, ['Small','Medium','Large'])
print (df)
Village Workers level
0 Takali 127 Large
1 Dhokari 84 Medium
2 Aagar 10 Small
3 Gardhani 122 Large
4 Khanapur 65 Medium
5 Ambikanagar 45 Medium
6 Pi.Khand 120 Large
7 Pangri 105 Large
8 Dhagewadi 32 Small
9 Sherewadi 34 Small
10 Shindwad 42 Small
我有这样的数据:
Village Workers
Takali 127
Dhokari 84
Aagar 10
Gardhani 122
Khanapur 65
Ambikanagar 45
Pi.Khand 120
Pangri 105
Dhagewadi 32
Sherewadi 34
Shindwad 42
我想创建一个新列,我必须在其中使用百分位数方法定义小、中和大级别。
例如:使用excel命令=PERCENTILE(Data numbers, 1/3)将得到43,
and =PERCENTILE(Data numbers, 2/3) 将给出 98 .
所以,我想在 python、
中使用 1/3 和 2/3 百分位数我想做像
这样的标准如果 Workers < = 1/3 百分位数值将被定义为 Small
如果工人 < =2/3 百分位值将被定义为中
IF Workers > 2/3 Percentile 值将被定义为大
我不知道如何在 python 中执行此操作,我知道如何使用 excel。
你能帮我解决 python 中的这个问题吗?
使用qcut
,只需要改变等级顺序:
import pandas as pd
df['level'] = pd.qcut(df['Workers'], 3, ['Small','Medium','Large'])
print (df)
Village Workers level
0 Takali 127 Large
1 Dhokari 84 Medium
2 Aagar 10 Small
3 Gardhani 122 Large
4 Khanapur 65 Medium
5 Ambikanagar 45 Medium
6 Pi.Khand 120 Large
7 Pangri 105 Large
8 Dhagewadi 32 Small
9 Sherewadi 34 Small
10 Shindwad 42 Small