pandas read_csv 编码列表列表

les*_*l0l 8 python pandas

我正在寻找熊猫 read_csv 编码选项字符串的列表。

我发现以下 URL 记录了 read_csv 函数的参数,但它不包含 read_csv 的可能编码选项列表。

http://pandas.pydata.org/pandas-docs/version/0.13.1/generated/pandas.io.parsers.read_csv.html

谁能帮我这个?

小智 8

我为所有编码类型编写了一个简单的检查器。我的数据在标题中包含有问题的标志,所以我使用

df.info()
Run Code Online (Sandbox Code Playgroud)

函数检查一切是否正确。

import pandas as pd

codecs = ['ascii','big5','big5hkscs','cp037','cp273','cp424','cp437','cp500','cp720','cp737','cp775','cp850','cp852','cp855',
          'cp856','cp857','cp858','cp860','cp861','cp862','cp863','cp864','cp865','cp866','cp869','cp874','cp875','cp932','cp949',
          'cp950','cp1006','cp1026','cp1125','cp1140','cp1250','cp1251','cp1252','cp1253','cp1254','cp1255','cp1256','cp1257','cp1258',
          'euc_jp','euc_jis_2004','euc_jisx0213','euc_kr','gb2312','gbk','gb18030','hz','iso2022_jp','iso2022_jp_1','iso2022_jp_2',
          'iso2022_jp_2004','iso2022_jp_3','iso2022_jp_ext','iso2022_kr','latin_1','iso8859_2','iso8859_3','iso8859_4','iso8859_5','iso8859_6',
          'iso8859_7','iso8859_8','iso8859_9','iso8859_10','iso8859_11','iso8859_13','iso8859_14','iso8859_15','iso8859_16','johab','koi8_r','koi8_t',
          'koi8_u','kz1048','mac_cyrillic','mac_greek','mac_iceland','mac_latin2','mac_roman','mac_turkish','ptcp154','shift_jis','shift_jis_2004',
          'shift_jisx0213','utf_32','utf_32_be','utf_32_le','utf_16','utf_16_be','utf_16_le','utf_7','utf_8','utf_8_sig']


for x in range(len(codecs)):
    print(x,': Now checking use of:', codecs[x])
    try:
        df = pd.read_csv('*your_csv_file*.csv', header = 0, encoding = (codecs[x]), sep=';')
        print(df.info())
        print(input('Press any key...'))
    except:
        print('I can\'t load data for', codecs[x], '\n')
        print(input('Press any key...'))
Run Code Online (Sandbox Code Playgroud)

请记住提供 sep 参数也有帮助。


Sha*_*wal 6

这是可用的python 3编码列表-

https://docs.python.org/3/library/codecs.html#standard-encodings

我不认为熊猫包含或排除任何额外的编码。

  • 这个链接可能很适合包含在文档中(不确定文档字符串,尽管可能太麻烦);想做一个拉取请求吗? (2认同)