小编Tod*_*mon的帖子

Python/Pandas:如何读取 cp1252 中的 csv 并删除第一行?

解决方案 :

\n

查看答案,它不是以 CP1252 编码,而是以 UTF-16 编码。解决方案代码是:

\n
import pandas as pd\n\ndf = pd.read_csv(\'my_file.csv\', sep=\'\\t\', header=1, encoding=\'utf-16\')\n
Run Code Online (Sandbox Code Playgroud)\n

还适用于encoding=\'utf-16-le\'

\n
\n

更新:前 3 行的输出(以字节为单位):

\n
In : import itertools \n...:  print(list(itertools.islice(open(\'file_T.csv\', \'rb\'), 3)))\n\nOut : [b\'\\xff\\xfe"\\x00D\\x00u\\x00 \\x00m\\x00e\\x00r\\x00c\\x00r\\x00e\\x00d\\x00i\\x00 \\x000\\x005\\x00 \\x00j\\x00u\\x00i\\x00n\\x00 \\x002\\x000\\x001\\x009\\x00 \\x00a\\x00u\\x00 \\x00m\\x00e\\x00r\\x00c\\x00r\\x00e\\x00d\\x00i\\x00 \\x000\\x005\\x00 \\x00j\\x00u\\x00i\\x00n\\x00 \\x002\\x000\\x001\\x009\\x00\\n\', b\'\\x00"\\x00\\t\\x00\\t\\x00\\t\\x00\\t\\x00\\t\\x00\\t\\x00\\t\\x00\\t\\x00\\t\\x00\\n\', b\'\\x00C\\x00o\\x00d\\x00e\\x00 \\x00M\\x00C\\x00U\\x00\\t\\x00I\\x00m\\x00m\\x00a\\x00t\\x00r\\x00i\\x00c\\x00u\\x00l\\x00a\\x00t\\x00i\\x00o\\x00n\\x00\\t\\x00D\\x00a\\x00t\\x00e\\x00\\t\\x00h\\x00e\\x00u\\x00r\\x00e\\x00\\t\\x00V\\x00i\\x00t\\x00e\\x00s\\x00s\\x00e\\x00\\t\\x00L\\x00a\\x00t\\x00i\\x00t\\x00u\\x00d\\x00e\\x00\\t\\x00L\\x00o\\x00n\\x00g\\x00i\\x00t\\x00u\\x00d\\x00e\\x00\\t\\x00T\\x00y\\x00p\\x00e\\x00\\t\\x00E\\x00n\\x00t\\x00r\\x00\\xe9\\x00e\\x00\\t\\x00E\\x00t\\x00a\\x00t\\x00\\n\']\n
Run Code Online (Sandbox Code Playgroud)\n
\n

我正在处理 csv 文件,其原始形式为:

\n

屏幕 du d\xc3\xa9but de file_T

\n

问题是它有两个功能一起引发问题:

\n
    \n
  • 第一行不是标题

    \n
  • \n
  • 标头“Entr\xc3\xa9e”中有一个重音符号,如果我不精确编码 cp1252,则会引发 UnicodeDecode 错误

    \n
  • \n
\n

我正在使用 Python 3.X 和 pandas 来处理这些文件。

\n

但是当我尝试用这段代码阅读它时:

\n
import …
Run Code Online (Sandbox Code Playgroud)

python csv pandas

2
推荐指数
1
解决办法
4497
查看次数

标签 统计

csv ×1

pandas ×1

python ×1