def smallify(toktweet_line): toks, date, geo_s, tweet_s = toktweet_line.split('\t') toks = textproc.do_tokenization(toks) geo = json.loads(geo_s) tweet = json.loads(tweet_s) userid = tweet['user']['id'] # tweetid = tweet.get('id_str') # if not tweetid: tweetid = str(tweet['id']) tweetid = tweet['id'] # return {'date':date,'id':tweetid,'userid':userid,'geo':geo,'tokens':toks} return [date, str(userid), dumps(geo), ' '.join(toks)]
def mapper(self, _, line): toks,date,geo_s,tweet_s = line.split('\t') tweet = json.loads(tweet_s) # if not mrjob.util.hash_object(tweet['user']['id']).startswith('0000'): return toks = textproc.do_tokenization(toks) yield tweet['user']['id'], [tweet['user']['screen_name'], toks]