簡體   English   中英

計算一個值每月在 dataframe 中出現的次數

[英]Count how many times a value appears per month in dataframe

我有以下時間序列,其中包含幾年的每小時數據:

    local time         ghi mean
0       2013-01-01 00:00:00 0.0
1       2013-01-01 01:00:00 0.0
2       2013-01-01 02:00:00 -9999
3       2013-01-01 03:00:00 0.0
4       2013-01-01 04:00:00 0.0
..         ...          ...
8754    2016-12-31 18:00:00 427.5
8755    2016-12-31 19:00:00 194.9
8756    2016-12-31 20:00:00 -9999
8757    2016-12-31 21:00:00 237.6
8758    2016-12-31 22:00:00 -9999
8759    2016-12-31 23:00:00 0.0

我需要計算值 -9999 出現的次數並按年和月分組。所需的 output 類似於:

    local time     ghi mean
0    2013-01   1
..         ...          ...
8    2016-12   2

我試過了:

df.groupby(df["local time"].dt.strftime('%Y-%m')).df['ghi mean'].value_counts()[-9999]

但得到:

AttributeError: 'Series' object has no attribute 'df'

Boolean select,groupby sum 應該可以輕松滿足您的需求

如果df['ghi mean']是浮點數或 integer

  (df['ghi mean']==-9999).groupby(df['local time'].dt.strftime('%Y-%m')).sum()

如果您將df['ghi mean']字符串,則

(df['ghi mean']=='-9999.0').groupby(df['local time'].dt.strftime('%Y-%m')).sum()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM