2017-04-24 71 views
0

我有簡單的視頻的觀看次數數據集:分組到二維數組中的熊貓

df.head() 
Out[10]: 
       video_id views 
datetime      
2017-04-07 ---9wpGBsr4 1479.0 
2017-04-08 ---9wpGBsr4 1883.0 
2017-04-09 ---9wpGBsr4 2021.0 
2017-04-10 ---9wpGBsr4 2083.0 
2017-04-11 ---9wpGBsr4 2127.0 

我每部影片計算週報觀點:

resDf = df.groupby(['video_id', pd.TimeGrouper('W')]).sum() 

所以,我必須多指數VIDEO_ID,日期。現在我想要獲得每個視頻或2D numpy陣列視圖的numpy數組列表(數據集很大)。

現在我做:

resDf2 = resDf.reset_index().set_index('datetime') 
resultList = list(resDf2.groupby('video_id')['views'].apply(pd.DataFrame.as_matrix)) 

我認爲這是一個更好的,更快的方式。你能幫我嗎?

回答

0

你的例子中你想要的輸出是什麼?這是你在追求什麼?

df.groupby(['video_id', pd.TimeGrouper('W')]).sum().values 
Out[414]: 
array([[ 5383.], 
     [ 4210.]]) 
+0

包含視頻每週視圖的數組列表。該列表中的每一行 - 視頻視圖。該陣列中的每個元素 - 下週的該視頻的視圖。 –