Pandas read_excel有时会在矩阵行

时间:2015-12-06 23:46:14

标签: python excel pandas unicode

我在Mac上使用Python 2.7。我有this data in Excel我要用Python导入,可能还有Pandas。但是,即使导入顺利,我也知道最后一列中的某些单元格实际上是作为unicode字符导入的(即使在excel中它们是真正的浮点数。)

df = pd.read_excel('SO data', header = None, sheetname = None)
p = df['P'].values

我在一些单元格的末尾得到了奇怪的字符\ uffde,关闭了矩阵的某些行......

此外,即使我用像float(unicode_cell [: - 1]这样的东西修复它)我仍然有一些奇怪的东西,好像我试图用isnan(p)这样的函数检查nans,我得到一个像:

TypeError: ufunc 'isnan' not supported for the input types, and the inputs could not be safely coerced to any supported types according to the casting rule ''safe''

我真的被这个困住了。 任何帮助将非常感激。 提前谢谢。

1 个答案:

答案 0 :(得分:2)

您发布的数据确实在最后一列中有5个unicode字符。删除后,dtypes全部为float

df = pd.read_excel('SO Data.xlsx'), header=None, sheetname='P')
print(df.info())

<class 'pandas.core.frame.DataFrame'>
Int64Index: 72 entries, 0 to 71
Columns: 3221 entries, 0 to 3220
dtypes: float64(3221)
memory usage: 1.8 MB
None