簡體   English   中英

<class ‘decimal.conversionsyntax’>使用 Python 從 CSV 文件導入數據時出錯(嘗試使用 CSV 和 Pandas)</class>

[英]<class ‘decimal.ConversionSyntax’> errors when importing data from a CSV file using Python (tried using CSV and Pandas)

我有一個來自一家小型企業的 CSV 文件,該文件代表了他們在大約 30 年內分布的大約 70,000 個訂單的記錄。 我的目標是將這些數據存儲在 Django 項目中,並在 model 設置中使用 DecimalField 來接收導入。

在嘗試將數據存儲在 Django 之前,我首先嘗試將此數據導入 Python。 雖然大多數記錄導入正常,但在導入期間大約有 1000 條記錄拋出 <class 'decimal.ConversionSyntax'> 錯誤。 這導致我將不正確的數據輸入 Python。 我需要修復它讀取數據的方式或修復數據本身的問題。

  1. 我已經嘗試過 python csv 庫和 pandas 來打開文件。
  2. 我在文本編輯器 (SublimeText) 中查看了 csv 文件,並沒有發現數據存儲方式有任何異常。
  3. 我嘗試使用 Microsoft Excel 將數據轉換為 UTF-8
  4. 我試圖將數據從 Excel 復制到 SublimeText 中,然后從 SublimeText 復制到 Excel 中的新行(預先沒有數據的原始行)。

這些都沒有解決問題。

我怎樣才能找出這些數據有什么問題並解決這個錯誤?

您可以使用chardet來檢測編碼。

import chardet
with open('csv_of_text.csv','rb') as fraw: # "rb" = bytes mode
    file_content = fraw.read()
chardet.detect(file_content)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM