簡體   English   中英

熊貓Groupby返回平均值但! 排除NaN

[英]Pandas Groupby Return Average BUT! exclude NaN

因此,我試圖利用pandas groupby函數並減少我擁有的大數據框。 這是一個例子:

                             A        B
2016-09-23 19:36:08+00:00   NaN     34.0
2016-09-23 19:36:11+00:00   NaN     33.0
2016-09-23 19:36:12+00:00   24.1    NaN
2016-09-23 19:36:14+00:00   NaN     34.0
2016-09-23 19:36:17+00:00   NaN     34.0
2016-09-23 19:36:20+00:00   NaN     34.0
2016-09-23 19:36:22+00:00   24.2    NaN
2016-09-23 19:36:23+00:00   NaN     34.0
2016-09-23 19:36:26+00:00   NaN     34.0
2016-09-23 19:36:29+00:00   NaN     34.0
2016-09-23 19:36:32+00:00   24.1    NaN
2016-09-23 19:36:33+00:00   NaN     34.0
2016-09-23 19:37:00+00:00   NaN     34.0
2016-09-23 19:37:02+00:00   24.1    NaN

因此,我有兩個數據系列“ A”和“ B”,它們以不同的采樣率作為原始數據幀的索引以不同的速率采樣。

我現在想按日期/小時/分鍾對數據框的行進行分組,並返回每分鍾數據的平均值。 在此,平均值應忽略數據幀中的缺失值。

因此,例如,我將返回以下內容:

                             A        B
2016-09-23 19:36:00+00:00   24      34.0
2016-09-23 19:37:00+00:00   24.1    33.0

是否可以使用內置的熊貓函數來做到這一點?

我認為您需要使用Resampler.mean resample Resampler.mean ,該Resampler.mean將計算組的平均值,不包括缺失值:

print (df.resample('1Min').mean())
                             A          B
2016-09-23 19:36:00  24.133333  33.888889
2016-09-23 19:37:00  24.100000  34.000000

groupby另一種解決方案:

print (df.groupby([pd.TimeGrouper('1Min')]).mean())
                             A          B
2016-09-23 19:36:00  24.133333  33.888889
2016-09-23 19:37:00  24.100000  34.000000

暫無
暫無

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

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