2017-06-21 43 views
0

我正在做一個groupby在時間序列數據集上使用pd.timegrouper。當我在這個groupby對象上繪製boxplot時,它有子圖。我不想將情節區域劃分爲子情節。我嘗試使用參數subplots=False,但它拋出一個錯誤,說出KEY ERROR「值」。
這是我與subplots獲得的陰謀。
enter image description hereboxplot on groupby timegrouper without sublots using pandas

代碼:

df['timestamp1'] = df['timestamp'].values.astype('datetime64[s]') 
df=df.groupby(pd.TimeGrouper(key="timestamp1",freq="3H"),group_keys=True,as_index=True) 
df.boxplot(column="value",subplots=True) 

我使用的數據框對象是:
enter image description here

我想繪製在同一區域中的所有箱線圖不將其分爲次要情節 提前致謝。

+1

您正在獲取子圖,因爲您正在繪製groupby對象而不是數據框。每個小組都被繪製。 'df'不再是一個數據幀。你需要對你的groupby對象執行一些聚合/轉換/應用,然後繪圖。 –

回答

0

這實際上可能是一個錯誤。您只需選擇timestamp1和value列即可獲得期望的結果,因此無需使用column參數。

df[['timestamp1', 'value']].groupby(pd.TimeGrouper('3H', key='timestamp1'))\ 
          .boxplot(subplots=False) 

我繼續和submitted an issue在github上。