来自CSV的Pandas Dataframe无法正确显示

时间:2019-05-07 16:20:42

标签: python excel pandas dataframe

我正在尝试将csv文件(25MB-80000行)导入pandas数据框,但显示不正确。列之间用';'分隔。致电df.columns时。

  Originated GeoZone;Booking ...                                                                                                                                                                                                                                                                                                                                                          
1  PARIS;PARIS;;MARKer;EQDff;...                                                                                                                                                                                                                                                                                                                                                                                              
2  PARIS;PARIS;;MARKer;EQDff;...                                                                                                                                                                                                                                                                                                                                                                                              
3  PARIS;PARIS;;MARKer;EQDff;...                                                                                                                                                                                                                                                                                                                                                                                             
4  PARIS;PARIS;;MARKer;EQDff;...  

在Excel中,csv文件非常清晰。为什么熊猫不能很好地解释它。

3 个答案:

答案 0 :(得分:2)

此问题可能是由Excel中的分隔符不同引起的,通常取决于您所在的国家/地区。

您可以尝试以下方法:

pd.read_csv("your file", sep = ";")

这应该可行。

理论:这是由csv文件的不同分隔符引起的。 Python默认情况下使用逗号,但是某些文件可能使用其他逗号,例如:“;”或“ |”。

答案 1 :(得分:2)

解决方案:

pd.read_csv('your file', sep = ';')

@RafaelC指出,您的默认分隔符为;,因此您必须单独指定

答案 2 :(得分:2)

您应在sep中使用delimiterread_csv属性:

  

sep : str, default ‘,’

     

要使用的分隔符。如果sep为None,则C引擎无法自动检测到分隔符,但Python解析引擎可以,这意味着将使用后者,并通过Python的内置嗅探器工具csv.Sniffer自动检测到分隔符。此外,超过1个字符且与'\ s +'不同的分隔符将被解释为正则表达式,并且还将强制使用Python解析引擎。注意,正则表达式定界符易于忽略引用的数据。正则表达式示例:“ \ r \ t”。

     

delimiter : str, default None

     

9月别名。

df = pd.read_csv('waka.csv', sep=';')