草庐IT

随机数

全部标签

python - PyTables 读取随机子集

是否可以从HDF5中读取行的随机子集(通过pyTables或者,最好是pandas)?我有一个包含数百万行的非常大的数据集,但只需要几千个样本进行分析。那么从压缩的HDF文件中读取呢? 最佳答案 使用HDFStore文档为here,压缩文档为here0.13支持通过构造索引进行随机访问In[26]:df=DataFrame(np.random.randn(100,2),columns=['A','B'])In[27]:df.to_hdf('test.h5','df',mode='w',format='table')In[28]:st

python - TensorFlow:生成随机常数

在ipython中,我导入了tensorflow作为tf和numpy作为np并创建了一个TensorFlowInteractiveSession。当我使用numpy输入运行或初始化一些正态分布时,一切运行良好:some_test=tf.constant(np.random.normal(loc=0.0,scale=1.0,size=(2,2)))session.run(some_test)返回:array([[-0.04152317,0.19786302],[-0.68232622,-0.23439092]])正如预期的那样。...但是当我使用Tensorflow正态分布函数时:som

python - 如何使用带有本地种子的 Python 随机数生成器?

Python的random似乎是全局的,所以改变它的模块会相互影响。虽然当然有很多第3方模块,但有没有一种方法可以使用Python的标准库来获得上下文本地的随机数。(不使用random.get/setstate,这在混合来自不同模块的代码时可能会出现问题)。有点像...r=random.context(seed=42)number=r.randint(10,20)每个模块都可以使用自己的随机上下文。 最佳答案 Fromthedocs:Thefunctionssuppliedbythismoduleareactuallyboundme

python - 如何使用Python `secret`模块生成随机整数?

在Python3.6中,newmodule,secrets,已添加。使用此模块生成[n,m)范围内的随机整数的最有效方法是什么?我试过choice(range(n,m)),但我怀疑这是最好的方法。 最佳答案 secrets.choice(range(n,m))应该没问题,因为range在Python3上是惰性的。n+secrets.randbelow(m-n)是另一种选择。我不会使用它,因为它不太明显正确。由于secrets提供了对SystemRandom类的访问,与random.Random具有相同的接口(interface),您

python - 从列表中随机选择并替换

我有一个列表列表,像这样:a=[[1,2],[2,3]]我想创建一个替换a给定大小的随机列表。numpy.random.choice()方法只接受一维数组。我可以编写自己的函数来执行此操作,但是是否已经有优化的方法?预期输出:[[1,2],[1,2],[2,3],[2,3]]//thesize(4here)hastobeaparameterpassedtothefunction 最佳答案 您可以简单地调用thestandardlibrary'srandom.choice()反复。不需要numpy。>>>list_of_lists=[

随机森林(Random Forest)原理解析:从集成学习到决策树集合

目录1.集成学习2.决策树集合3.随机森林的预测4.随机森林优缺点5.随机森林代码实例随机森林是一种强大且常用的机器学习算法,它通过集成学习的思想将多个决策树组合成一个强大的分类或回归模型。本文将详细解析随机森林的原理,从集成学习到决策树集合的构建过程。1.集成学习集成学习是一种通过组合多个弱学习器来构建一个强学习器的方法。随机森林就是基于集成学习思想的一种算法。集成学习通过组合多个模型的预测结果,从而提高模型的泛化能力和稳定性。2.决策树集合随机森林由多个决策树组成,每个决策树都是独立构建的,且没有相互依赖关系。决策树集合的构建过程包括以下步骤:随机采样:从原始训练集中使用有放回抽样(boo

python - 在numpy中绘制随机元素

我有一个元素概率数组,比方说[0.1,0.2,0.5,0.2]。数组总和为1.0。使用普通Python或numpy,我想绘制与其概率成比例的元素:第一个元素大约10%的时间,第二个20%,第三个50%等。“draw”应该返回所绘制元素的索引。我想到了这个:defdraw(probs):cumsum=numpy.cumsum(probs/sum(probs))#sumupto1.0,justincasereturnlen(numpy.where(numpy.random.rand()>=cumsum)[0])可以,但是太绕了,一定有更好的办法。谢谢。 最佳答案

python - 使用 Scipy 记录正态随机变量

我无法理解创建对数正态变量的基础知识here.Thelognormaldistributiontakesonmeanandvarianceasparameters.我想使用这些参数创建一个卡住分布,然后获取cdf、pdf等。但是,在文档中,他们使用fromscipy.statsimportlognorms=0.953682269606rv=lognorm(s)'s'似乎是标准偏差。我尝试使用'loc'和'scale'参数而不是's',但这产生了错误(s是必需参数)。如何生成具有位置和比例参数值“m”、“s”的卡住分布? 最佳答案 谜

python - 如何在Python中生成2个数字之间给定小数点的随机数?

我想在min_time和m_time之间生成一个小数点后一位的随机数,比如0.3现在我有一个非常奇怪的解决方案m_time=0.5min_time=0.2float(randint(int(min_time*10),int(m_time*10)))/10有效,但我想知道是否有更好的解决方案? 最佳答案 我认为首选方式是uniformly在min_time和max_time之间选择一个float,然后使用内置的round函数(精确到小数点后一位):round(random.uniform(min_time,max_time),1)

python - Scikit-learn:并行化随机梯度下降

我有一个相当大的训练矩阵(超过10亿行,每行两个特征)。有两个类(0和1)。这对于一台机器来说太大了,但幸运的是我有大约200个MPI主机可供我使用。每个都是适度的双核工作站。特征生成已经成功分发。Multiprocessingscikit-learn中的答案建议可以分配SGDClassifier的工作:Youcandistributethedatasetsacrosscores,dopartial_fit,gettheweightvectors,averagethem,distributethemtotheestimators,dopartialfitagain.当我在每个估算器上第