python - 使用for循环将数据添加到pandas数据帧,所有数据数据帧的键相同,数据帧已经包含一些数据
问题描述
我使用 tweepy 存储了 twitter 的流数据。我从数据中提取了名称、语言、国家和文本,并存储在一个 pandas 数据框中。现在我想将性别字段添加到相同的数据帧中,这是我通过使用 for 循环通过 GEt 请求从性别 API 获取的。如何将该性别列添加到同一数据框中?
tweets_data 包含所有数据,我正在使用 nameparser 查找名字
tweets['text'] = map(lambda tweet: tweet['text'], tweets_data)
tweets['lang'] = map(lambda tweet: tweet['lang'], tweets_data)
tweets['country'] = map(lambda tweet: tweet['place']['country'] if tweet['place'] != None else None, tweets_data)
tweets['name'] = map(lambda tweet: tweet['user']['name'], tweets_data)
tweets1=pd.DataFrame()
tweets1['name1'] = map(lambda tweet: tweet['user']['name'], tweets_data)
gender_data=[]
for i,v in tweets.iterrows():
try:
name1 = v['name']
name = HumanName(name1)
PARAMS = {'name':name['first']}
r = requests.get(url = URL, params = PARAMS)
data = r.json()
name = data['name']
gender = data['gender']
gender_data.append(gender)
print(gender_data)
except:
continue
tweets1=pd.DataFrame(gender_data,columns=['gender'])
tweets.merge(tweets1,how='left', left_on='name', right_on='name1')
解决方案
推荐阅读
- azure - Azure IoT 中心 - 启用路由时,IoT 中心触发器不执行
- react-native - 需要在完成之前获得将要完成的照片的大小。世博会
- json - 在这种情况下,使用 JSON 数据的更好方法是什么?
- ios - 如何将 IOS 14 支持添加到我的 React Native 应用程序?
- vb.net - 如何在 Visual Basic 中输入变量的范围
- rust - Rust 将 trait 的实现依赖注入到另一个对象中
- c++ - 在 C++ 中为不同对象的集合提供接口的最简洁方法
- javascript - Alpine.js +flatpickr Datetimepicker 不工作
- python - 在二维列表中查找最高平均值
- f# - 如何使用 F# 验证 RsaSha256 JWT 签名?