2
我有一個數據框(我們稱之爲「csv」),我想對其進行分組並獲取組的第一個元素的值。例如:如何根據分組數據創建數據框
A B C D
foo bar happy yellow
foo bar sad green
foo ape last laugh
我想這是輸出:
A B C
foo bar happy
foo ape last
我現在這樣做:
grp1 = csv.groupby(['A','B'])
lst = [(A,B,csv.ix[group[0]]['C']) for (A,B),group in grp1.groups.items()]
df = DataFrame(lst,columns=['A','B','C'])
df.to_csv('grp.csv',cols=['A','B','C'],index=False)
但這似乎效率不高。我真的必須先創建一個列表,然後從中創建一個dataframe
?沒有辦法直接創建dataframe
,或者在原始dataframe
上進行某種索引或某種操作,以便我可以使用每組中的第一條記錄?