首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >配置单元:如何拥有存储来自情感分析API的情感值的派生列

配置单元:如何拥有存储来自情感分析API的情感值的派生列
EN

Stack Overflow用户
提问于 2012-11-17 06:52:23
回答 2查看 3.1K关注 0票数 2

以下是场景:

假设您有一个存储twitter数据的Hive Table。

假设它有5列。一列是文本数据。

现在,如何添加存储来自twitter文本数据的sentiment Analysis的情感值的第6列。我计划使用情感分析应用程序接口,如Sentiment140或viralheat。

我非常感谢任何关于如何在Hive中实现“派生”列的技巧。

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-27 11:23:40

不幸的是,虽然Hive API允许您向表中添加新列(使用ALTER table foo add COLUMNS (bar binary)),但这些新列将为NULL并且不能被填充。向这些列添加数据的唯一方法是清除表中的行并从新文件加载数据,该新文件包含该新列的数据。

回答你的问题:你不能,在蜂巢里。要执行您建议的操作,您必须有一个包含6列的文件,第6列已经包含情感分析数据。然后可以将其加载到HDFS中,并使用Hive进行查询。

编辑:我刚刚尝试了一个例子,我在添加新列(见上)后将表导出为.csv,并将其弹出到M$ Excel中,在那里我可以对表值执行函数。在添加函数之后,我只是保存并上传了.csv,并从它重新构建了表。我不确定这对您是否有特别的帮助(因为情感分析不太可能在Excel中完成),但可能对其他任何想要在Hive中具有计算列的人有用。

参考文献:

https://cwiki.apache.org/Hive/gettingstarted.html#GettingStarted-DDLOperations

http://comments.gmane.org/gmane.comp.java.hadoop.hive.user/6665

票数 1
EN

Stack Overflow用户

发布于 2013-03-23 16:15:31

您可以在两个步骤中完成此操作,而无需单独的表。步骤:

  1. 更改原始表以添加所需的列
  2. 对原始表中的所有列和计算列执行“覆盖表选择”。

注意:这尚未在群集安装上进行测试。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13425623

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档