如果您遇到编码为’utf-8’的问题,并且想要逐个单元格地进行,您可以尝试以下其他方法。
Python 2
(其中”df”是您的DataFrame对象。)
for column in df.columns:
for idx in df[column].index:
x = df.get_value(idx,column)
try:
x = unicode(x.encode(‘utf-8′,’ignore’),errors =’ignore’) if type(x) == unicode else unicode(str(x),errors=’ignore’)
df.set_value(idx,column,x)
except Exception:
print ‘encoding error: {0} {1}’.format(idx,column)
df.set_value(idx,column,”)
continue
然后尝试:
df.to_csv(file_name)
您可以通过以下方式检查列的编码:
for column in df.columns:
print ‘{0} {1}’.format(str(type(df[column][0])),str(column))
警告:errors =’ignore’只会省略该字符,例如
IN: unicode(‘Regenexx\xae’,errors=’ignore’)
OUT: u’Regenexx’
Python 3
for column in df.columns:
for idx in df[column].index:
x = df.get_value(idx,column)
try:
x = x if type(x) == str else str(x).encode(‘utf-8′,’ignore’).decode(‘utf-8′,’ignore’)
df.set_value(idx,column,x)
except Exception:
print(‘encoding error: {0} {1}’.format(idx,column))
df.set_value(idx,column,”)
continue
Original: https://blog.csdn.net/weixin_31782201/article/details/113512178
Author: 青州重楼上
Title: python将str写入csv_python – Pandas将数据帧写入CSV fi
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/677743/
转载文章受原作者版权保护。转载请注明原作者出处!