Python 为什么numpy random.choice()函数已停止使用?

Python 为什么numpy random.choice()函数已停止使用?,python,numpy,scipy,Python,Numpy,Scipy,我一直在使用numpy,需要使用random.choice()函数。遗憾的是,在版本2.0中,它不在random或random.mtrand.RandomState模块中。它是否因特定原因被排除在外?讨论或文档中没有关于它的内容 关于信息,我正在MacOS上运行Python2.7上的Numpy2.0。所有安装程序均由现场提供的标准安装程序安装 谢谢 random.choice是python本身的一部分,而不是numpy。您是否导入了随机 更新:numpy 1.7添加了一个新函数,numpy.ra

我一直在使用numpy,需要使用random.choice()函数。遗憾的是,在版本2.0中,它不在random或random.mtrand.RandomState模块中。它是否因特定原因被排除在外?讨论或文档中没有关于它的内容

关于信息,我正在MacOS上运行Python2.7上的Numpy2.0。所有安装程序均由现场提供的标准安装程序安装


谢谢

random.choice
是python本身的一部分,而不是numpy。您是否导入了随机

更新:numpy 1.7添加了一个新函数,
numpy.random.choice
。显然,你需要NUMPY1.7版本


更新2:似乎在未发布的numpy 2.0中,这被临时称为
numpy.random.sample
。它已重新命名为“返回”。这就是为什么在使用未发布的版本时,您真的应该看看API(
pydoc numpy.random
)和变更日志。

我的第一个猜测是,它没有中断,但您没有正确安装numpy。文档说numpy 1.7.0有新版本,你至少安装了那个版本吗?我已经安装了2.0版本,所以我检查了,很抱歉没有提到原始问题!另外,从我在文档中发现的情况来看,random.choice不允许您指定权重,统一选择随机元素非常简单。重量也很简单,只是觉得在numpy中使用它可能会很有趣。当时我自己实现了它:目前还没有numpy 2.0这样的东西。您安装了一些开发源的未知修订版,这些修订版碰巧将自身列为2.0。在添加
choice()
之前,您可能已经进行了修订。哇,这太奇怪了。我真的不记得我从哪里安装的,但我一定会尝试降级到支持的版本!我很确定我是在标准numpy上!我想我是个笨蛋!我也对此感到困惑,似乎numpy.random.choice函数不见了……Python和numpy都有一个random.choice()函数。random.choice()的选择是统一的,我在我的numpy 2.0安装中也找不到numpy.random.mtrand.RandomState.choice()。那么也许你应该坚持最新的版本。2.0尚未完成。无论如何,您可以尝试
numpy.random.sample
,它显然在12月的某个时候重新命名为
numpy.random.choice
random.sample
从半开放区间[0.0,1.0]的随机浮动中提取
numpy.random.choice
从numpy数组中随机抽取元素。它们是完全不同的东西。@NickCrawford
random.sample
不同于
numpy.random.sample
。。我看到的
random.sample
numpy.random.choice
之间唯一的区别是后者返回一个numpy数组,而不是一个普通的python数组。加上
numpy.random.choice
的参数,允许您对单个元素进行替换和一些权重采样。