簡體   English   中英

將 csv 文件讀取到 Pandads dataframe 中,值的分隔符不止一個

[英]Reading a csv file into a Pandads dataframe with more than one separator for the values

我有一個 csv 文件,它以逗號符號作為分隔符,同時值用 " 分隔。第一行是文本,第二行是空的,第三行由列標題組成。如果我嘗試導入使用 pandas 並使用代碼將文件放入 dataframe

IE00B0M62Q58 = pd.read_csv('ETF/sample.csv', sep=',')

我收到一個錯誤,例如

ParserError: Error tokenizing data. C error: Expected 2 fields in line 3, saw 13

如何將文件讀入 Pandas 中的 dataframe?

我復制並粘貼了 sample.csv 文件,如下所示:

Fondsposition per,"03.Jun.2021"


Emittententicker,Name,Anlageklasse,Gewichtung (%),Kurs,Nominale,Marktwert,Nominalwert,Sektor,ISIN,Börse,Standort,Marktwährung
"AAPL","APPLE INC","Aktien","3,63","123,54","1.722.459","212.792.585","212.792.584,86","IT","US0378331005","NASDAQ","Vereinigte Staaten","USD"
"MSFT","MICROSOFT CORP","Aktien","3,08","245,71","735.512","180.722.654","180.722.653,52","IT","US5949181045","NASDAQ","Vereinigte Staaten","USD"
"AMZN","AMAZON COM INC","Aktien","2,38","3.187,01","43.863","139.791.820","139.791.819,63","Zyklische Konsumgüter ","US0231351067","NASDAQ","Vereinigte Staaten","USD"
"FB","FACEBOOK CLASS A INC","Aktien","1,37","326,04","245.671","80.098.573","80.098.572,84","Kommunikation","US30303M1027","NASDAQ","Vereinigte Staaten","USD"
"GOOG","ALPHABET INC CLASS C","Aktien","1,24","2.404,61","30.223","72.674.528","72.674.528,03","Kommunikation","US02079K1079","NASDAQ","Vereinigte Staaten","USD"

嘗試在您的通話中使用decimal參數

IE00B0M62Q58 = pd.read_csv('ETF/sample.csv', sep=',', decimal=',')

還有如果. 它是一個數字分隔符, 2.404,612404.61 ,那么你可以使用thousands位參數:

IE00B0M62Q58 = pd.read_csv('ETF/sample.csv', sep=',', decimal=',' thousands='.')

如果您想在開頭跳過閱讀特定行,請添加跳過

IE00B0M62Q58 = pd.read_csv('ETF/sample.csv', sep=',',skiprows=2, thousands='.', decimal=',') 

暫無
暫無

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

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