Python 包 rpy2 的这个实现对我有用:
import numpy as np
from rpy2.robjects.packages import importr
import rpy2.robjects as robjects
r = robjects.r #allows access to r object with r.
bcp = importr('bcp') #import bayesian change point package in python
values = bcp.bcp( r.c( r.rnorm(50) , r.rnorm(50,5,1), r.rnorm(50) ) ) #use bcp function on vector
posterior_means = np.array(values[5]).flatten()
posterior_probability = np.array(values[7]).flatten()
然后,您可以针对原始向量绘制后验均值和后验概率。有关此示例的更多详细信息,请参阅 R 中的 bcp 函数示例。
此外,使用数字(即 values[5])的硬索引值并不理想,但我在使用 rx 和 rx2 提取器时遇到了困难。因此,如果有人能告诉我一种不那么骇人听闻的提取方法,我很想知道!