Python Numpy loadtxt编码
我正在尝试用numpy.loadtxt加载数据。。。我试图读取的文件正在使用cp1252编码。是否有可能使用numpy将编码更改为cp1252 以下Python Numpy loadtxt编码,python,numpy,encoding,ubuntu-12.04,cp1252,Python,Numpy,Encoding,Ubuntu 12.04,Cp1252,我正在尝试用numpy.loadtxt加载数据。。。我试图读取的文件正在使用cp1252编码。是否有可能使用numpy将编码更改为cp1252 以下 import numpy as np n = 10 myfile = '/path/to/myfile' mydata = np.loadtxt(myfile, skiprows = n) 给出: UnicodeDecodeError: 'utf-8' codec can't decode byte 0xf6 in position 189: i
import numpy as np
n = 10
myfile = '/path/to/myfile'
mydata = np.loadtxt(myfile, skiprows = n)
给出:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xf6 in position 189: invalid start byte
该文件包含元数据(前n行),后跟一个浮动表
编辑:这个问题只有在Ubuntu(12.04)上运行时才会发生。在Windows上,它工作得很好。因此,我认为这个问题与编码有关
Edit2:如下图所示打开文件也可以正常工作:
import codecs
data = codecs.open(myfile, encoding='cp1252')
datalines = data.readlines()
但是,我想使用np.loadtext直接将数据读入numpy数组。我可以自己解决这个问题 在使用numpy读取文件之前,我只需使用适当的
import numpy as np
import codecs
n=10
filecp = codecs.open(myfile, encoding = 'cp1252')
mydata = np.loadtxt(filecp, skiprows = n)
谢谢大家 cp1252中的
ox6f
是o
,您的输入是什么样子的?只要您使用numpy 1.8.1
和n
是正确的。我有预感,除非使用上下文管理器(with
),否则这会导致文件描述符泄漏。