Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在R和Python之间同步随机样本选择_Python_R_Random - Fatal编程技术网

在R和Python之间同步随机样本选择

在R和Python之间同步随机样本选择,python,r,random,Python,R,Random,在R和Python中是否有现成的方法可以让我生成相同的PRNG结果 背景:我正在尝试将一些代码从R迁移到Python。它包含一个使用sample而不进行替换的算法 我可以通过(更简单的)显示它在一个小的输入集上产生相同的结果,或者(更复杂的)显示结果在给定一个更大的输入集时收敛,来验证迁移的代码 假设我想走一条简单的路线。显然,以下结果并不完全相同,因为发动机罩下有不同的PRNG和采样功能实现 # R set.seed(1) sample(0:9,3) # returns vector 2 3

在R和Python中是否有现成的方法可以让我生成相同的PRNG结果

背景:我正在尝试将一些代码从R迁移到Python。它包含一个使用
sample
而不进行替换的算法

我可以通过(更简单的)显示它在一个小的输入集上产生相同的结果,或者(更复杂的)显示结果在给定一个更大的输入集时收敛,来验证迁移的代码

假设我想走一条简单的路线。显然,以下结果并不完全相同,因为发动机罩下有不同的PRNG和采样功能实现

# R
set.seed(1)
sample(0:9,3)
# returns vector 2 3 4
以及:

我可以接受它并编写我自己的PRNG,这将是有教育意义的,但需要更多的程序员时间(在非优化代码上)。如果是这样,我可能会选择更复杂的验证

除了使用现有库之外,还有其他方法吗?我不希望引入第三方依赖关系(比如JavaAPI)。目前倾向于
rPython
实现,但对任何事情都持开放态度


更新:这没有一个可接受的答案,也没有直接处理随机选择,只是生成一个随机的均匀分布。

您可以从Python中调用R代码来获取随机值(或从R中调用Python)。看起来至少有一个人开发了一个包来完成在R和Python@Dason之间同步rng的任务,谢谢——我将把它包装成一个答案(需要返回一个示例,它看起来像是从x中选择n,我需要执行
shuffle(x)[:n]
)除非您想编写它,否则您始终可以从Python中调用R代码来获取随机值(或从R中调用Python)。看起来至少有一个人开发了一个包来完成在R和Python@Dason之间同步rng的任务,谢谢——我将把它包装成一个答案(需要返回一个示例,它看起来像是从x中选择n,我需要执行
shuffle(x)[:n]
),除非您想编写它
# Python
import random
random.seed(1)
random.sample(range(10),3)
# returns list 2 1 4