我遇到了常见的问题
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