python - Pandas groupby 聚合忽略空白或无值

标签 python mysql pandas

我是 python 和 pandas 的新手。我们如何在忽略空白/无/NaN 值的情况下对多个列应用 groupby 和聚合? 基本上,我想汇总日期的列并计算剩余列的数量,忽略 None/blank/NaN 值。

例子: 我有这样的数据:

    ID  Ra  out recommen    navi    Time
0   1   7   None    None    NaN 2013-11-11
1   2   1   None    None    3   2013-11-11
2   5   5   None    None    1   2013-11-12
3   6   9   None    None    NaN 2013-11-12
4   9   2   None    None    NaN 2013-11-12
5   10  10  None    None    NaN 2013-11-12
6   11  10  None    None    NaN 2013-11-12
7   12  10  None    None    NaN 2013-11-12
8   13  5   None    None    NaN 2013-11-12

我正在尝试对这些值应用 groupby 和计数聚合函数,如下所示: daily=df.groupby('时间').count()

这给了我:

ID  Ra  out recommen    navi    Time
2   2   2   2           2       2013-11-11
7   7   7   7           7       2013-11-12

预期输出为:

ID  Ra  out recommen    navi    Time
2   0   0   0           1       2013-11-11
7   0   0   0           1       2013-11-12

提前谢谢你!

最佳答案

使用方法dropna()

阅读文档以获取更多信息:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.dropna.html

提前使用您的 id 列作为索引。

您可以执行以下操作:

df = df.set_index(df["ID"])

文档 -> http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.set_index.html

关于python - Pandas groupby 聚合忽略空白或无值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32564118/

相关文章:

python - 如何在不带括号调用的函数中传递参数?

python __getattribute__ 返回类变量属性时出现RecursionError

python - 凯拉斯 :load_model ValueError: axes don't match array

PHP MySQL 按列中的相似值进行分组

python - Pandas:Idxmax,最好的 n 个结果

python - 如何使用两个字段进行排序?

php - 将Mysql数据插入Json文件不起作用

mysql - 数据库:类别特征的设计模式

Python - Pandas — 如何检查 DataFrame 是按哪一列分组的?

python - 应用操作连接数据帧中的某些行重新调整无