作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个由“12 个 3 组合”创建的 220 个元组的列表。 Python 中有没有办法从这个元组列表中采样,这样我选择的每个样本都包含集合中的所有 12 个元素?
例如,如果集合是 [a,b,c,d,e,f,g,h,i,j,k,l],则随机选择应该看起来像 [(a,b,c), (d ,e,f), (g,h,i), (j,k,l)]。我尝试了以下
for y in range(4):
for x in range(2):
print(random.sample(list, 4))
但是很多样本并不具备母集的所有元素。
最佳答案
混洗原始集合/列表,然后从该混洗列表中取出 3 元组怎么样?
import random
lst = range(12) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
lst_shuffle = random.sample(lst, k=len(lst)) # shuffle the list
smp = [tuple(lst_shuffle[i:i+3]) for i in range(0, len(lst_shuffle), 3)] # make chunks
print(smp) # e.g., [(0, 2, 10), (3, 5, 4), (11, 7, 8), (1, 9, 6)]
我相信这在概率上等效的同时更节省内存。
关于python - 元组列表的随机抽样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69694003/
如何从填充有 1 和 0 的矩阵中抽取 n 个随机点的样本? a=rep(0:1,5) b=rep(0,10) c=rep(1,10) dataset=matrix(cbind(a,b,c),nrow
这个问题在这里已经有了答案: How to efficiently get 10% of random numbers, then 10% of remaining 90 etc untill al
我有一个与它非常相似的数据框,但有数千个值: import numpy as np import pandas as pd # Setup fake data. np.random.seed([3,
我是一名优秀的程序员,十分优秀!