【发布时间】:2020-03-04 21:23:38
【问题描述】:
我收到一个错误,我不知道我应该做什么?!
错误信息:
文件“pandas_libs\writers.pyx”,第 55 行,在 pandas._libs.writers.write_csv_rows
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2026' in position 147: ordinal not in range(128)
import numpy as np
import pandas as pd
from nltk.classify import NaiveBayesClassifier
from nltk.corpus import subjectivity
from nltk.sentiment import SentimentAnalyzer
from nltk.sentiment.util import *
import matplotlib.pyplot as mlpt
import tweepy
import csv
import pandas as pd
import random
import numpy as np
import pandas as pd
import re
consumer_key = ''
consumer_secret = ''
access_token = ''
access_token_secret = ''
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth,wait_on_rate_limit=True)
fetch_tweets=tweepy.Cursor(api.search, q="#unitedAIRLINES",count=100, lang ="en",since="2018-9-13", tweet_mode="extended").items()
data=pd.DataFrame(data=[[tweet_info.created_at.date(),tweet_info.full_text]for tweet_info in fetch_tweets],columns=['Date','Tweets'])
data.to_csv("Tweets.csv")
cdata=pd.DataFrame(columns=['Date','Tweets'])
total=100
index=0
for index,row in data.iterrows():
stre=row["Tweets"]
my_new_string = re.sub('[^ a-zA-Z0-9]', '', stre)
cdata.sort_index()
cdata.set_value(index,'Date',row["Date"])
cdata.set_value(index,'Tweets',my_new_string)
index=index+1
#print(cdata.dtypes)
cdata
【问题讨论】:
-
请以文本形式分享整个错误消息。
-
代码中的哪一行有错误?
data.to_csv("Tweets.csv")应该默认为 utf-8,而不是 ascii。 -
在pandas库本身的文件中没有确定的行,并在处理将数据存储在CSV“Excel”文件中时显示此错误,此错误为(编码和UTF-8 ) 而这样的工作人员出现太多,不知道如何处理
-
错误信息显示:文件“pandas_libs\writers.pyx”,第 55 行,在 pandas._libs.writers.write_csv_rows UnicodeEncodeError: 'ascii' codec can't encode character u'\u2026' in位置 147:序数不在范围内(128)
-
Unicode 字符 2026 是一个水平省略号。我没有经常处理 Pandas - 我不确定它是否可以处理其 CSV 输出中的完整 Unicode 字符集。该消息不会暗示:无法将该 Unicode 字符转换为 ASCII。也许您可以在输入数据中找到并删除 Unicode 省略号,或者通常将输入数据“清理”为仅 ASCII?
标签: python pandas csv decode encode