UnicodeDecodeError:“ ascii”编解码器无法解码位置2的字节0xc3:序数不在范围(128)

时间:2018-07-18 10:05:48

标签: python pandas dataframe unicode

我遇到了常见的问题

UnicodeDecodeError:'ascii'编解码器无法解码位置2的字节0xc3:序数不在范围内(128)

错误。即使我在这里看了很多,也找不到适合我的问题。

这是东西。我正在加载.csv文件,将数据加载到数据帧并查看它们没有问题。一旦我将一种方法应用于数据框以根据某些列的格式设置其格式,我就会收到上面显示的错误。

我试图通过一个小示例来复制错误,以向您显示问题,但是在小示例中,一切正常,因此显然问题出在我正在加载的.csv文件中。

.csv文件来自德语网站,如果有帮助的话,也来自德语网站。

这是代码:

import pandas as pd
import numpy as np
from IPython.display import HTML


#File path
path='file:///D:/Users/Phython/08_07_2018.csv'    

#load data
df = pd.read_csv(path, sep=';', encoding="utf-8")

#replace metric system
i=3
while i <= len(df):
    df.iloc[:, i] = df.iloc[:, i].str.replace(',', '.').astype(float)
    i+=1

#select columns to apply method on them
columnNamesCondCol = ['%heute', 'Wert heute', '+/- gesamt', '%gesamt', 'Wert seit Kauf']

#format cells based on their value
def color_negative_red(val):
    color = 'black'
    if val < 0 : color = 'red'
    if val > 0 :  color = 'green'
    return 'color: %s' % color 

#apply method to dataframe
df=df.style.applymap(color_negative_red, subset=columnNamesCondCol)

df

0 个答案:

没有答案