当使用自动分隔符检测的配置来读取csv文件(pd.read_csv(file_path, sep=None))时,pandas会尝试推断分隔符(或分隔符).
有没有办法检索此推理的结果(最终用于的值sep)?
编辑
我正在寻找一个使用返回的pandas对象的方法read_csv.我使用版本0.20.2的熊猫.
如果您只想检测 csv 的方言(不加载数据),您可以使用内置csv.Sniffer标准:
Sniffer 类用于推断 CSV 文件的格式。
具体来说,该sniff方法:
Run Code Online (Sandbox Code Playgroud)sniff(sample, delimiters=None)分析给定的样本并返回一个反映找到的参数的方言子类。如果给出了可选的分隔符参数,则将其解释为包含可能的有效分隔符的字符串。
下面是它的用法示例:
with open('example.csv', 'r') as csvfile:
dialect = csv.Sniffer().sniff(csvfile.readline())
print(dialect.delimiter)
Run Code Online (Sandbox Code Playgroud)
我认为你可以这样做而无需导入csv:
reader = pd.read_csv(file_path, sep = None, iterator = True)
inferred_sep = reader._engine.data.dialect.delimiter
Run Code Online (Sandbox Code Playgroud)
编辑:
忘了iterator = True论证.
| 归档时间: |
|
| 查看次数: |
2482 次 |
| 最近记录: |