TabPy - 无效的文件路径或缓冲区对象类型

时间:2018-01-03 09:23:24

标签: python visualization tableau tabpy

最近开始使用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中的actualmax列中找到平均值。 相同的代码在Python内部运行良好但不知何故我收到错误消息 -

Error Message

之后,我甚至尝试过这样的事情 - 使用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的强大功能。

我在这里做错了什么?我该怎么办?

1 个答案:

答案 0 :(得分: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])))

希望这有助于其他正在经历此问题的人。

快乐的Tableau'ing。