我使用tweepy存储了twitter的流数据,从数据中提取了姓名、语言、国家和文本,并存储在一个数据框中。 现在我想将gender字段添加到同一个数据帧中,这个数据帧是我通过for循环的GEt请求从gender api获得的。 如何将性别列添加到同一数据帧?你知道吗
tweets\u数据包含所有数据,我正在使用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')
熊猫允许你只添加字段。 采取以下框架:
my_frame = pd.DataFrame({'name': ['bob', 'jack']})
您可以这样添加性别列:
相关问题 更多 >
编程相关推荐