1

最近开始使用 TabPy。

我已经看到 python 代码直接在 Tableau 中不起作用(通常在 Python 环境中运行良好)或者我做错了什么。

这就是我所面临的 -

我写了代码

FLOAT(SCRIPT_REAL('

import pandas as pd
import numpy as np
from scipy import stats


# In[152]:

# Reading input file

data_file = pd.read_csv(_arg1)
a1 = data_file([Actualmax])
return a1' , '/User/****/caution new/7S.csv

# In[153]:

# Calculate Mean

mn = np.mean(a1)
return mn


'))

使用它从文件 7S 中的实际最大值列中查找平均值。相同的代码在 Python 中运行良好,但不知何故我收到一条错误消息 -

错误信息

之后,我什至尝试了类似的方法 - 使用 Column 作为参数,而不是从本地系统导入文件,因为该文件已经在 Tableau 中

INT(SCRIPT_STR("

import pandas as pd
import numpy as np
from scipy import stats

# In[152]:

# Reading input file

data_file = pd.read_csv(_arg1)

# In[153]:

# Calculate Mean

mn = np.mean(_arg1)
return mn

",SUM([Actualmax])))

没有语法错误,但错误保持不变。

当我写这样的东西时,我得到了结果 -

SCRIPT_INT("

import pandas as pd
import numpy as np
from scipy import stats

# In[152]:

# Reading input file

#data_file = pd.read_csv(arg)

# In[153]:

# Calculate Mean

mn = np.mean(arg)
return mn


",AVG([Actualmax]))

但这不是我想要去做的事情——因为它使用的是 Tableau 中的 AVG 函数,而不是 Python 的强大功能。

我在这里做错了什么?我应该如何进行?

4

1 回答 1

1

显然答案很简单 - 我在下面给出的链接中关注了 Bora Beran 的帖子 - https://community.tableau.com/docs/DOC-10856

在 -使用每一行数据 - 分类数据部分下

新代码是

(SCRIPT_REAL("

import numpy as np
# Normality test

#return _arg1

mn = np.mean(_arg1)
return mn


",ATTR([Actualmax])))

希望这对遇到此问题的其他人有所帮助。

快乐的画面。

于 2018-01-04T06:52:48.950 回答