2014-06-25 21 views
0

我正在使用熊貓來組織和操作從Twitter API獲取的數據。 'id'鍵返回一個非常長的整數(int64),熊貓沒有問題處理(即481496718320496643)。當使用to_sql發送到SQLite數據庫時,熊貓數據框中的長整型值發生更改

然而,當我發送到SQL:

df.to_sql('Tweets', conn, flavor='sqlite', if_exists='append', index=False)

我現在已經鳴叫ID:481496718320496640或一些接近這個數字。

我將tweet ID轉換爲str,但Pandas SQLite驅動程序/ SQLite仍然會混淆數字。 SQLite數據庫中的數據類型是[tweet_id] INTEGER。發生了什麼事情,如何防止這種情況發生?

+1

這在SQLite本身中工作正常。這聽起來好像熊貓SQLite驅動程序將其視爲浮點數字。 –

+0

你使用的是什麼版本的熊貓?有或沒有sqlalchemy? – joris

回答

0

我發現了這個問題 - 我使用SQLite管理器(Firefox插件)作爲SQLite客戶端。無論出於何種原因,SQLite Manager都會錯誤地顯示推文ID,即使它們被正確存儲(即,當我查詢時,我會得到所需的值)。很奇怪,我必須說。我下載了不同的SQLite客戶端來查看數據並正確顯示。

+1

[已知錯誤](https://code.google.com/p/sqlite-manager/issues/detail?id=3) –

相關問題