它总是让我觉得容易的东西.我试图计算按月和年分组的Dataframe中某些变量的非空值的数量.所以我可以做到这一点很好
counts_by_month=df[variable1, variable2].groupby([lambda x: x.year,lambda x: x.month]).count()
Run Code Online (Sandbox Code Playgroud)
但我真的想知道每组中有多少这些值是NaN.所以我想计算每个变量中的Nans,以便我可以计算每组中缺失的百分比数据.我找不到这样做的功能.或者我可以通过计算组中的总项目来达到同样的目的.然后NaNs将是Total - 'Non-Null values'
我一直试图找出我是否可以以某种方式计算索引值但我无法这样做.对此的任何帮助都非常感谢.祝福杰森
df.isnull().sum()
Run Code Online (Sandbox Code Playgroud)
更快,并且不需要自定义函数:)
In [279]: df
Out[279]:
A B C D E
a foo NaN 1.115320 -0.528363 -0.046242
b bar 0.991114 -1.978048 -1.204268 0.676268
c bar 0.293008 -0.708600 NaN -0.388203
d foo 0.408837 -0.012573 1.019361 1.774965
e foo 0.127372 NaN NaN NaN
In [280]: def count_missing(frame):
return (frame.shape[0] * frame.shape[1]) - frame.count().sum()
.....:
In [281]: df.groupby('A').apply(count_missing)
Out[281]:
A
bar 1
foo 4
dtype: int64
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6213 次 |
| 最近记录: |