Numpy loadtxt编码

9o685dep  于 11个月前  发布在  其他
关注(0)|答案(1)|浏览(106)

我尝试使用numpy. loadtxt加载数据。我尝试读取的文件使用的是cp 1252编码。是否可以使用numpy将编码更改为cp 1252?
以下

import numpy as np
n = 10
myfile = '/path/to/myfile'
mydata = np.loadtxt(myfile, skiprows = n)

字符串
给出:
UnicodeDecodeError:'utf-8'编解码器无法解码位置189中的字节0xf 6:无效的起始字节
该文件包含元数据(前n行),后跟一个浮点数表。
这个问题只在Ubuntu(12.04)上运行时发生。在Windows上运行得很好。出于这个原因,我认为这个问题与编码有关。
如下图所示打开文件也很有效:

import codecs
data = codecs.open(myfile, encoding='cp1252')
datalines = data.readlines()


但是,我想使用np.loadtext直接将数据读入numpy数组。

dffbzjpn

dffbzjpn1#

在使用numpy阅读文件之前,您必须使用适当的编码打开文件:

import numpy as np
import codecs

n=10

filecp = codecs.open(myfile, encoding = 'cp1252')
mydata = np.loadtxt(filecp, skiprows = n)

字符串

相关问题