Python版本的tmvtnorm::rtmvnorm,最初是在R

2024-09-29 23:29:46 发布

您现在位置:Python中文网/ 问答频道 /正文

为了模拟一些数据,我需要从截断的多元正态分布中抽样随机数。这是对R中一个名为tmvtnorm::rtmvnorm的函数的描述

我在R中尝试过这个函数,但是我的脚本主要是由python编写的。所以我想知道是否有任何函数可以做同样的事情?

我在scipy中尝试过truncnorm,主持人(python库)。但这一切都不像tmvtnorm::rtmvnorm输出的结果。你知道吗

最后,我使用rpy2得到R的结果输出

下面是需要回答的问题:

  1. 有什么工具可以像tmvtnorm::rtmvnorm那样工作吗?你知道吗
  2. 关于scipy中tmvtnorm::rtmvnormtruncnorm差异的任何解释。你知道吗

谢谢。你知道吗


Tags: 工具数据函数脚本scipy差异事情rpy2
1条回答
网友
1楼 · 发布于 2024-09-29 23:29:46

我们可以从python调用R,并获得从rtmvnorm生成的输出

from pyper import *
import pandas as pd
r=R(use_pandas=True)
r('''
    library(tmvtnorm)
    sigma <- matrix(c(4,2,2,3), ncol=2)
    x <- rtmvnorm(n=500, mean=c(1,2), sigma=sigma, upper=c(1,0))

         ''')
out = pd.DataFrame(r.get('x'))
pr int(out.head(5))
#          0         1
#    0 -0.832567 -1.976393
#    1  0.466617 -0.266892
#    2  0.802809 -0.403514
#    3 -2.295357 -1.896990
#    4 -0.128641 -0.392827

相关问题 更多 >

    热门问题