【问题标题】:How to read a file with a semi colon separator in pandas如何在熊猫中读取带有分号分隔符的文件
【发布时间】:2014-08-27 16:24:51
【问题描述】:

我在 python 中使用 pandas 导入一个.csv 文件。

这是来自.csv的文件格式:

a1;b1;c1;d1;e1;...
a2;b2;c2;d2;e2;...   
.....

获取方法如下:

from pandas import *
csv_path = "C:...."
data = read_csv(csv_path)

现在当我打印文件时,我得到了:

0  a1;b1;c1;d1;e1;...
1  a2;b2;c2;d2;e2;...   

等等...所以我需要帮助来读取文件并将值拆分为列,使用半色字符;

【问题讨论】:

    标签: python csv pandas


    【解决方案1】:

    read_csv 接受 sep 参数,在您的情况下,只需像这样传递 sep=';'

    data = read_csv(csv_path, sep=';')
    

    在您的情况下失败的原因是默认值为',',因此它将所有列作为单个列条目进行整理。

    【讨论】:

    • 有没有办法以编程方式判断 CSV 是否由 ,; 分隔?
    【解决方案2】:

    针对上述莫里斯的问题: “有没有办法以编程方式判断 CSV 是否由 , 或 ; 分隔?”

    这会告诉你:

    import pandas as pd
    
    df_comma = pd.read_csv(your_csv_file_path, nrows=1,sep=",")
    df_semi = pd.read_csv(your_csv_file_path, nrows=1, sep=";")
    if df_comma.shape[1]>df_semi.shape[1]:
        print("comma delimited")
    else:
        print("semicolon delimited")
    

    【讨论】:

      猜你喜欢
      • 2017-11-28
      • 1970-01-01
      • 2016-08-02
      • 1970-01-01
      • 2017-10-21
      • 2020-11-09
      相关资源
      最近更新 更多