我正在尝试从我拉入文本文件的tweepy数据创建数据框。
但是,当我尝试使用我想要的列创建数据帧时,不会生成任何内容。代码运行,但没有输出。
以下是代码:
#writing文本文件 打开(" jsontweet3.txt"," a")作为txtfile: txtfile.write(' tweet_id retweet_count favorite_count \ n')
#pulling tweet info
for tweet_id in fdf.tweet_id:
try:
twitinfo = tweetapi.get_status(str(tweet_id), tweet_mode='extended')
except:
# Not able to get tweet --> add to failed_tweets list
failed_tweets.append(tweet_id)
else:
# only gets executed if the try clause did not fail
retweets = twitinfo.retweet_count
favorites = twitinfo.favorite_count
txtfile.write(str(twitinfo)+' '+str(retweets)+' '+str(favorites)+'\n')
tdf = pd.DataFrame(columns=['tweet_id','retweet_count','favorite_count'])
with open('jsontweet3.txt','r') as file:
for line in file:
twitinfo,retweets,favorites= line[:-1].split(' ')
tdf = tdf.append({'tweet_id':twitinfo,'retweet_count':retweets,'favorite_count':favorites},ignore_index=True)
TDF
非常感谢所有帮助!
答案 0 :(得分:0)
除了我对for
循环和.readlines()
缩进的评论之外,我建议:
1)将tweepy数据写为csv(用逗号分隔,而不是空格),然后pd.read_csv()
将生成csv
2)在创建文本文件的同时创建数据框。只需在第一个for
之前生成tdf,然后在执行tdf.append()
txtfile.write()
行