2016-10-08 119 views
0

我有一個datetime類型列設置爲索引的數據幀。 我想用apply函數處理每行的數據。我怎樣才能訪問當前行的索引值?熊貓:從行獲取datetime索引值

     hid  lat  lon 
2016-08-11 10:56:00 549 40.639504 -79.996961 
2016-08-11 10:57:00 639 40.539504 -79.993981 
2016-08-11 10:58:00 749 40.438842 -79.924733 

def f(row): 
    # I want to access row idx value here 

df['new'] = df.apply(lambda row: f(row), axis=1) 

回答

1

由於應用會返回一個系列,你可以調用系列代表了指數的名稱,例如有:

df['new'] = df.apply(lambda row: row.name, axis=1) 
+1

如果你不通過'生= TRUE',適用回報系列其實。你可以通過'df.apply(lambda row:row.index,axis = 0)'獲得行索引',但是當然你的建議更有意義。 – ayhan

+0

@ayhan你其實是對的,即使在axis = 1上它也會返回一個Series,所以你可以調用它的名字,修復答案。 –