2016-08-03 50 views
0

我工作的大熊貓據幀和mysql,我的表是關於像時間序列,如何避免在熊貓數據框上插入重複的行?

symbol_id date  close 
1   2016-6-1 123 
1   2016-6-2 133 
1   2016-6-3 143 
2   2016-6-1 23 
2   2016-6-2 33 
2   2016-6-3 43 

當斷言新的數據框到表中,我使用

df.to_sql(name='symbol_test1', con=engine, if_exists = 'replace', index=True) 
+0

問題是什麼?你期待什麼,你收到什麼結果? – Alex

回答

0

假設你要刪除重複項,你可以這樣做

df.drop_duplicates(subset='symbol_id') 

如果你沒有指定任何子集參數,那麼它默認檢查行級重複。

有選項,以第一次出現或最後出現等 請參考: http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.drop_duplicates.html

+0

是否意味着我需要將數據框導出到python工作區,然後在與expoted dataframe比較之後刪除重複的數據? –

+0

我假設您在問題中提到的數據已經在數據框中。我不明白你說的是什麼意思_「通過與表示的數據幀比較後刪除重複的內容?」_ @weiWu –

+0

對不起。也許我沒有足夠清晰地提出我的問題。前面的數據框存儲在mysql數據庫中,我需要從網絡中取出最新的數據框並存儲最新的數據,這就是我的意思。 –