python3中使用使用read_csv( )读取csv文件,文件路径中含有中文,无法读取怎么处理?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3中使用使用read_csv( )读取csv文件,文件路径中含有中文,无法读取怎么处理?相关的知识,希望对你有一定的参考价值。

from pandas import read_csv;
path="C:\\Users\\YKW\\Desktop\\Python数据分析实战\\data.csv"
读取错误,无法打开csv文件,请问怎么处理?

参考技术A

字符被转义了写的不对,将字符改成英文模式下的字符 。

Python3具有脚本语言中最丰富和强大的类库,足以支持绝大多数日常应用。Python的名字来源于一个喜剧,也许最初设计Python这种语言的人并没有想到今天它会在工业和科研上获得如此广泛的使用。

著名的自由软件作者Eric Raymond在他的文章《如何成为一名黑客》中,将Python列为黑客应当学习的四种编程语言之一,并建议人们从它开始学习编程。这的确是 一个中肯的建议,对于那些从来没有学习过编程或者并非计算机专业的编程学习者而言,Python是最好的选择之一。

参考技术B

最顶上这样写:

#!/usr/bin/env python
# coding: UTF-8

还有文件名的引号前加u

参考技术C 可以修改路径 去掉中文 参考技术D r’路径’追问

试过了,还是一样,没有用

追答

文件开头加入
#-*_coding:utf8-*-

第5个回答  2017-02-13 错误提示什么,麻烦把你问题描述清楚。

Python Pandas——Read_csv详解

参考技术A 可以指定整个DataFrame或各个列的数据类型:

pandas提供了多种方法来确保列仅包含一个dtype。例如,可以使用read_csv()的converters参数:

或者,可以在读取数据后使用to_numeric()函数强进行类型转换。

可以通过指定dtype ='category'或dtype = CategoricalDtype(类别,有序)直接解析类别列。

可以使用dict指定将某列为Category类型:

指定dtype ='category'将导致无序分类,其类别是数据中观察到的唯一值。

要更好地控制类别和顺序,可以创建CategoricalDtype,然后将其传递给该列的dtype。

使用dtype = CategoricalDtype时,dtype.categories之外的“意外”值将被视为缺失值。

文件可能包含标题行,也可能没有标题行。 pandas假定第一行应用作列名:

通过指定name与header,可以重命名列以及是否丢弃标题行:

如果标题不在第一行中,则将行号传递给标题,将跳过header前面的行:

如果文件或标题包含重复的名称,默认情况下,pandas会将它们区分开,以防止覆盖数据.

usecols参数允许您使用列名,位置号或可调用的方法选择文件中列的任何子集.

如果指定了comment参数,则将忽略注释行。 默认情况下,空行也将被忽略。

如果skip_blank_lines = False,则read_csv将不会忽略空行:

警告:被忽略的行的存在可能会导致涉及行号的歧义; 参数标题使用行号(忽略注释/空行),而行首使用行号(包括注释/空行).

如果同时指定了skiprows和header,则header将相对于skiprows的末尾。 例如:

为了更好地使用日期时间数据,read_csv()使用关键字参数parse_dates和date_parser允许用户指定列的日期/时间格式,将string转换为日期时间对象。

通常,我们可能希望分别存储日期和时间数据,或分别存储各种日期字段。 parse_dates关键字可用于指定列的组合,以从中解析日期和/或时间。 您可以指定要parse_dates的列或嵌套列表,结果日期列将被添加到输出的前面(以便不影响现有的列顺序),新的列名为各列Name的连接。

默认情况下,解析器会删除组件日期列,可以选择通过keep_date_col关键字保留它们:

请注意,如果您希望将多个列合并为一个日期列,则必须使用嵌套列表。 换句话说,parse_dates = [1,2]表示第二和第三列应分别解析为单独的日期列,而parse_dates = [[1,2]]意味着应将这两列解析为单个列。

还可以使用字典来指定自定义名称列:

重要的是要记住,如果要将多个文本列解析为单个日期列,则在数据前添加一个新列。

index_col参数基于这组新列而不是原始数据列:

注意:如果列或索引包含不可解析的日期,则整个列或索引将作为对象数据类型原样返回。 对于非标准日期时间解析,请在pd.read_csv之后使用to_datetime()。

注意:read_csv具有用于解析iso8601格式的日期时间字符串的fast_path,例如“ 2000-01-01T00:01:02 + 00:00”和类似的变体。 如果可以安排数据以这种格式存储日期时间,则加载时间将明显缩短,约20倍。

最后,解析器允许您指定自定义date_parser函数,以充分利用日期解析API的灵活性:

Pandas不能原生表示具有混合时区的列或索引。 如果CSV文件包含带有时区混合的列,则默认结果将是带有字符串的object-dtype列,即使包含parse_dates。

要将混合时区值解析为datetime列,请将部分应用的to_datetime()传递给utc = True作为date_parser。

以上是关于python3中使用使用read_csv( )读取csv文件,文件路径中含有中文,无法读取怎么处理?的主要内容,如果未能解决你的问题,请参考以下文章

pandas使用read_csv函数读取文件最后N行数据并保留表头pandas使用read_csv函数读取网络url链接数据

pandas使用read_csv读取数据使用index_col参数移除Unnamed:0数据列pandas使用read_csv读取压缩格式文件

pandas使用read_csv函数读取文件并解析日期数据列(parse dates)pandas使用read_csv函数读取文件并将缺失值转化为空字符串

使用 pandas.read_csv 从 URL 读取压缩的 CSV 文件时出错

pandas学习笔记D1

如何在熊猫中使用 read_csv 将时区感知日期时间作为时区天真的本地 DatetimeIndex 读取?