举个栗子!Tableau 技巧(241):用 Python 脚本
经常有数据粉反馈:在处理文本内容的时候,是否有快速提取内容关键词的方法呢?
方法有的,可以试试 Python。这里,我们来分享:如何在 Tableau 中利用 Python 脚本从文本内容提取关键词。
图片来自网络
今天的栗子,一睹为快吧~
本期《举个栗子》,我们要给大家分享的 Tableau 技巧是:用 Python 脚本提取文本内容中的关键词。
为方便学习,栗子使用自拟的文本数据。掌握栗子方法后,数据粉可尝试使用自己的数据源。
具体步骤如下:
1、安装好 Python 环境,并安装扩展包 Tabpy (Tableau的分析扩展程序)、jieba (结巴分词包)、re (正则包)。
启动 Tabpy 服务,步骤请参考☞ 举个栗子!Tableau 技巧(201):在 Prep 中调用 Python 处理复杂数据
2、打开 Tableau Desktop,连接栗子数据。
单击顶部菜单栏“帮助”,下拉菜单选择:设置和性能-管理分析扩展程序连接,弹窗中选择:TabPy,然后如下配置并保存连接。
3、单击字段右上角 ▼ 按钮,下拉菜单选择:创建计算字段。
将字段命名为:tags,键入函数:
SCRIPT_STR("
import jieba.analyse # 导入jieba
import re # 导入re 正则表达式
#使用正则表达式过滤掉不可见的字符,如换行等,以避免报错
content = [re.sub('\s','', str) for str in _arg1]
#使用jieba从内容提取关键词,只提取权重最高的3个名词
tags = [jieba.analyse.extract_tags(c, topK=3, allowPOS=('n')) for c in content]
#将提取结果的格式处理成字符串,以返回给Tableau
result = [','.join(r) for r in tags]
return result
",
attr([Brief]))
然后,再单击窗口右下角的“默认表计算”,在弹窗中将“根据以下因素计算:”的值设置为:Name。
新建工作表,将字段“Name”和“tags”以此拖放至行,在视图中的文本表中,可以看到:关键词已经从文本中提取出来啦!
本期的 Tableau 技巧,你 Get 到了吗?
下一期,再见~
文章部分信息来源于网络,如有侵权请告知