Ubuntu上的PyStan导入错误

时间:2017-09-14 15:11:47

标签: python linux ubuntu stan

我正在使用一个简单的例子来尝试Pystan。代码是

来自pystan import stan 来自pystan import StanModel

# bernoulli model
model_code = """
    data {
      int<lower=0> N;
      int<lower=0,upper=1> y[N];
    }
    parameters {
      real<lower=0,upper=1> theta;
    }
    model {
      theta ~ beta(0.5, 0.5);  // Jeffreys' prior
      for (n in 1:N)
        y[n] ~ bernoulli(theta);
    }
"""
# using the model as above
data = dict(N=10, y=[0, 1, 0, 1, 0, 1, 0, 1, 1, 1])
sm = StanModel(model_code=model_code)
fit = sm.sampling(data=data)
print(fit)

我收到以下错误:

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-6-814d99e9c970> in <module>()
     19 # using the model as above
     20 data = dict(N=10, y=[0, 1, 0, 1, 0, 1, 0, 1, 1, 1])
---> 21 sm = StanModel(model_code=model_code)
     22 fit = sm.sampling(data=data)
     23 print(fit)

/home/yanwang/anaconda3/lib/python3.6/site-packages/pystan/model.py in __init__(self, file, charset, model_name, model_code, stanc_ret, boost_lib, eigen_lib, verbose, obfuscate_model_name, extra_compile_args)
    315                 os.dup2(orig_stderr, sys.stderr.fileno())
    316 
--> 317         self.module = load_module(self.module_name, lib_dir)
    318         self.module_filename = os.path.basename(self.module.__file__)
    319         # once the module is in memory, we no longer need the file on disk

/home/yanwang/anaconda3/lib/python3.6/site-packages/pystan/model.py in load_module(module_name, module_path)
     48         pyximport.install()
     49         sys.path.append(module_path)
---> 50         return __import__(module_name)
     51     else:
     52         import imp

ImportError: /tmp/tmpmesl4pvm/stanfit4anon_model_a4c8c0b8415be15f0e6878b909bb73da_2095873661089489367.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZTVN10__cxxabiv117__class_type_infoE

我怀疑系统上的某些.so文件有问题。你有什么问题吗?

0 个答案:

没有答案