pig:让tweets有价值

ecbunoof  于 2021-06-21  发布在  Pig
关注(0)|答案(1)|浏览(463)

我的目标是,用Pig拉丁语给tweet评分。我有三个词汇表可以用来作为词汇(积极的词,消极的词和不相关的词)。我想用这本字典给推特列表打分。我必须分析一条微博的每一个字。我必须通过搜索“法国的增长”来评价推特
例子:
列出积极的词:{好,积极,伟大,…}
列出负面词汇:{坏,衰退,…}
列出不相关的词:{德国,西班牙,奥朗德,奥巴马,…}
一条推文:“法国的增长又回来了,西班牙也回来了”=>分析每一个词:增长=>积极,法国=>积极,再次=>积极,西班牙=>不相关,所以这条推文是积极的,相关的,因为积极+积极+积极+不相关=积极
我试着做这个剧本。。。对不起英语

2w2cym1i

2w2cym1i1#

您的脚本应该是什么样的:
从tweeter流中提取tweet id和文本字段。
在id和文本中添加另一个字段,方法是使用flatten和tokenize-将文本标记为单词(您可以使用简单的空格标记器或更高级的nltk,并在新记录中打断每个单词)。
将(2)的输出与词典结合起来,将tweet中的每个单词标记为正、负或中性/不相关-您可能希望使用带符号的整数值,而不是正/负,这样您可以更容易地将它们相加。
根据tweet id对(3)的结果进行分组。
计算每条微博的情绪总和。
tweetsraw=使用jsonloader(…)加载“…”;
...
tweets=foreach。。。生成tweetid,文本;
tokenizedtweets=foreach tweets生成tweetid,text,flatten(tokenize(text))作为单词;
字典=加载“…”为(dictword:chararray,polarity:int);
labeled\ words=按单词连接tokenizedWeets,按单词连接dictionary;
groupedEmotation=按twitterid、文本对单词进行分组;
结果=foreach groupedfeature generate flatten(group),sum(labeled\u words.polarity)为速率;
转储结果;

相关问题