gpt4 book ai didi

python - 识别在特定分位数 : data science pandas 中的观察

转载 作者:太空狗 更新时间:2023-10-30 02:53:43 24 4
gpt4 key购买 nike

我有一个很大的 df,这是一个说明我的问题的例子。我想从这个数据框中知道哪些 id 在工作方面处于第一个百分比。我想确定(我在用一个假人思考)那百分之一的人在分配中有更多的工作

例如

id  year  rap  cohort    jobs  year_of_life  rap_new
1 2009 0 NaN 10 NaN 0
2 2012 0 2012 12 0 0
3 2013 0 2012 12 1 1
4 2014 0 2012 13 2 1
5 2015 1 2012 15 3 1
6 2016 0 2012 17 4 0
7 2017 0 2012 19 5 0
8 2009 0 2009 15 0 1
9 2010 0 2009 2 1 1
10 2011 0 2009 3 2 1
11 2012 1 2009 3 3 0
12 2013 0 2009 15 4 0
13 2014 0 2009 12 5 0
14 2015 0 2009 13 6 0
15 2016 0 2009 13 7 0
16 2011 0 2009 3 2 1
17 2012 1 2009 3 3 0
18 2013 0 2009 18 4 0
19 2014 0 2009 12 5 0
20 2015 0 2009 13 6 0
.....
100 2009 0 2007 5 6 1

也许可以转换成这样的东西,在这个数据框中,因为我们有 100 个 ID,100 个中的百分之一是一个,然后在工作中寻找最大的 ID。我真正的 df 会改变观察次数,这就是为什么我正在寻找一些标准代码,无论观察次数是多少,这些代码都将始终适用

id  year  rap  cohort    jobs  year_of_life  rap_new  new_var
1 2009 0 NaN 10 NaN 0 0
2 2012 0 2012 12 0 0 0
3 2013 0 2012 12 1 1 0
4 2014 0 2012 13 2 1 0
5 2015 1 2012 15 3 1 0
6 2016 0 2012 17 4 0 0
7 2017 0 2012 18 5 0 0
8 2009 0 2009 15 0 1 0
9 2010 0 2009 2 1 1 0
10 2011 0 2009 3 2 1 0
11 2012 1 2009 3 3 0 0
12 2013 0 2009 15 4 0 0
13 2014 0 2009 12 5 0 0
14 2015 0 2009 13 6 0 0
15 2016 0 2009 13 7 0 0
16 2011 0 2009 3 2 1 0
17 2012 1 2009 3 3 0 0
18 2013 0 2009 19 4 0 1
19 2014 0 2009 12 5 0 0
20 2015 0 2009 13 6 0 0
.....
100 2009 0 2007 5 6 1 0

最佳答案

您可以使用 pd.Series.quantile 来识别截止值

设置

import numpy as np
import pandas as pd

np.random.seed([3, 1415])
df = pd.DataFrame(dict(
id=range(1, 201),
jobs=np.random.randint(100, 10000, size=200)
))

解决方案

df[df.jobs >= df.jobs.quantile(.99)]

id jobs
23 24 9768
182 183 9965

关于python - 识别在特定分位数 : data science pandas 中的观察,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48553446/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com