Tableau丨1. 利用tabpy实现互连
本文最后更新于 265 天前,其中的信息可能已经有所发展或是发生改变。

1. 配置tableau prep应用tabpy

1) python环境配置

# 下载tabpy模块
pip install tabpy

2)启动tabpy,在终端输入tabpy,按下回车

在代码的最后面会显示端口号,如图为9004

# 注:在使用期间切勿关闭步骤1中运行tabpy的终端

2)打开tableau prep,点击帮助——设置和性能——管理分析扩展程序连接

3)设置连接tabpy,选择如图所示TabPy服务器

如果步骤1)是在本地启动的,其中服务器及端口选项为localhost及9004,其他选项空白即可

后点击登陆

4)在清理过后的数据中添加脚本

点击脚本,并在主界面左下脚选择python服务器

2. 配置所需要的.py文件

1)数据源展示

2)新建python文件,名称任意,但不建议包含中文及特殊字符

# 首先需要导入pandas包
# 如果没有,则 pip install pandas
import pandas as pd

# 定义如下函数,名称可任意
# 其中input便为输入表的DataFrame,之后的操作基于input操作即可
# 测试增加'测试增加'这一列,且数据全为0

def encode(input):
    input['测试增加'] = 0
    return pd.DataFrame(input)

# 定义输出字段格式函数
# 在encode函数的return表中的每一字段的格式都需要与tableau格式对齐
# 在字典中的键需要与encode输出的字段名一致

def get_output_schema():
  return pd.DataFrame({
    '店仓编号': prep_string(),
    '店仓名称': prep_string(),
    '测试增加': prep_int()
})
# 保存
# 对齐方式如下表
Python 中的函数生成的数据类型
prep_string()字符串
prep_decimal()十进制
prep_int()整数
prep_bool()布尔值
prep_date()日期
prep_datetime()日期时间

3)encode其他写法供参考


def encode(input):
    input['测试增加'] = 0
    return pd.DataFrame({
        '店仓编号new': input['店仓编号'],
        '店仓名称new': input['店仓名称'],
        '测试增加new': input['测试增加']
    })

3. 在tableau prep中连接

1)选择3中保存的文件,并输入操作数据的函数名

2)点击回车便可看到数据已经更改成功啦!

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇