创建可用性数据框

时间:2019-01-10 13:48:02

标签: python pandas dataframe

我有一个pandas dataFrame,其中包含几个参数的值,这些参数的时间间隔为15分钟。参数可以包含NaN值(np.nan)。我的目的是查找每个参数每月可用值的总数,即该月中不为0或np.nan的值的总数。

我尝试将所有有效值(非零或np.nan的值)都设为1;并将所有无效值都设为0。这样一来,我可以将一个月中某个参数的所有值相加,得出该月可用值的总数。

df.fillna(0)

for col in selected_parameters:
    df.loc[df[col] > 0, col] = 1

这将生成具有1的有效值和0的无效值的df。

我不能做的是创建一个新的dataFrame,它将每个月的时间戳(而不是15分钟)隔开,并且每个月都可以获取该月的可用值总数。

1 个答案:

答案 0 :(得分:1)

使用具有sum的groupby作为聚合函数

df.groupby([df.index.dt.year, df.index.dt.month]).agg('sum')

这假定您的时间戳记在索引处。