我有一个涵盖五年的3000家公司的数据框架。
Id Company Year Value
0 1111111 2016 NaN
1 1111111 2015 3871.0
2 3333333 2016 3989.0
3 3333333 2015 3648.0
4 4444444 2016 5456.0
5 4444444 2015 NaN
6 2222222 2016 NaN
7 2222222 2015 10.0
8 5555555 2016 1515.0
9 5555555 2015 2654.0
我喜欢进行选择,以确保所有公司都没有NaN值。因此,在选择中存在所有期间的数据,因此每个期间有相同数量的公司。
最简单的方法是什么?
结果应该是:
Id Company Year Value
2 3333333 2016 3989.0
3 3333333 2015 3648.0
7 5555555 2016 1515.0
8 5555555 2015 2654.0
谢谢
groupby.count()返回非空值的数量,因此,如果对公司进行分组,则计数应等于年数。假设没有重复项,您可以执行以下操作:
df.ix[df.groupby('Company')['Value'].transform('count') > 1, :]
Out[259]:
Id Company Year Value
2 2 3333333 2016 3989.0
3 3 3333333 2015 3648.0
8 8 5555555 2016 1515.0
9 9 5555555 2015 2654.0
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句