np.loadtxt报错
通过pandas生成的cvs数据利用nump.loadtxt读取的时候
tmp = np.loadtxt('test.csv', dtype=np.str, delimiter=",")
UnicodeEncodeError: 'latin-1' codec can't encode characters in position 57-58: ordinal not in range(256)
随后指定编码方式为uft-8依然报错
tmp = np.loadtxt(open("test.csv", encoding='ISO-8859-1'),dtype=np.str, delimiter=",")
最后看了别的博客,试了试改为encoding='ISO-8859-1'解决问题
ISO-8859-1
ISO-8859-1编码是单字节编码,向下兼容ASCII,其编码范围是0x00-0xFF,0x00-0x7F之间完全和ASCII一致,0x80-0x9F之间是控制字符,0xA0-0xFF之间是文字符号。
Latin1是ISO-8859-1的别名,有些环境下写作Latin-1。
所以为什么默认latin-1报错而ISO-8859-1可行