将csv文件读入具有多个值分隔符的Pandasds数据框

2024-10-02 22:31:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个csv文件,它以逗号符号作为分隔符,同时值以“.”分隔。第一行是文本,第二行是空的,第三行是列标题。如果我尝试使用pandas和代码将文件导入到数据框中

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

我得到一个错误,比如

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

如何将文件读入Pandas中的数据帧

我复制并粘贴了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"

Tags: 文件csv数据sample符号itclassinc
1条回答
网友
1楼 · 发布于 2024-10-02 22:31:19

尝试在调用中使用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='.')

如果要在开始时跳过读取特定行,请添加skiprows

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

相关问题 更多 >