如何在熊猫中读取带有分号分隔符的文件
Posted
技术标签:
【中文标题】如何在熊猫中读取带有分号分隔符的文件【英文标题】: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;...
等等...所以我需要帮助来读取文件并将值拆分为列,使用半色字符;
。
【问题讨论】:
【参考方案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")
【讨论】:
以上是关于如何在熊猫中读取带有分号分隔符的文件的主要内容,如果未能解决你的问题,请参考以下文章
如何使用包含引号并使用多个分隔符的 pandas 读取 CSV 文件