数据帧编码
Dataframe encoding
有没有办法对我的数据帧的索引进行编码?我有一个数据框,其中索引是国际会议的名称。
df2= pd.DataFrame(index=df_conf['Conference'], columns=['Citation1991','Citation1992'])
我不断收到:
KeyError: 'Leitf\xc3\xa4den der angewandten Informatik'
每当我的代码引用带有未知 ascii 字母的外国会议名称时。
我试过了:
df.at[x.encode("utf-8"), 'col1']
df.at[x.encode('ascii', 'ignore'), 'col']
有办法解决吗?我试着看看我是否可以在创建数据帧时对其本身进行编码,但我似乎也做不到。
设置编码应该在读取输入文件时处理,使用选项encoding
df = pd.read_csv('bibliography.csv', delimiter=',', encoding="utf-8")
或者如果文件使用 BOM
、
df = pd.read_csv('bibliography.csv', delimiter=',', encoding="utf-8-sig")
如果您不使用 csv,并且想对字符串索引进行编码,这对我有用:
df.index = df.index.str.encode('utf-8')
只需将 "u" 放在 utf8 字符串前面,这样
df2= pd.DataFrame(index=df_conf[u'Conference'], columns=[u'Citation1991',u'Citation1992'])
它会起作用。
有没有办法对我的数据帧的索引进行编码?我有一个数据框,其中索引是国际会议的名称。
df2= pd.DataFrame(index=df_conf['Conference'], columns=['Citation1991','Citation1992'])
我不断收到:
KeyError: 'Leitf\xc3\xa4den der angewandten Informatik'
每当我的代码引用带有未知 ascii 字母的外国会议名称时。
我试过了:
df.at[x.encode("utf-8"), 'col1']
df.at[x.encode('ascii', 'ignore'), 'col']
有办法解决吗?我试着看看我是否可以在创建数据帧时对其本身进行编码,但我似乎也做不到。
设置编码应该在读取输入文件时处理,使用选项encoding
df = pd.read_csv('bibliography.csv', delimiter=',', encoding="utf-8")
或者如果文件使用 BOM
、
df = pd.read_csv('bibliography.csv', delimiter=',', encoding="utf-8-sig")
如果您不使用 csv,并且想对字符串索引进行编码,这对我有用:
df.index = df.index.str.encode('utf-8')
只需将 "u" 放在 utf8 字符串前面,这样
df2= pd.DataFrame(index=df_conf[u'Conference'], columns=[u'Citation1991',u'Citation1992'])
它会起作用。