【发布时间】:2017-11-04 10:47:08
【问题描述】:
我有一个相对于 double 数组创建的 bool 数组:
array1 = ... # the double array initialization
array2 = array1 < threshold # threshold is set somewhere else
假设我的第二个数组的输出是这样的:
# array2 = [True, False, True, True, True, False]
我想选择True 项目的百分比。例如,如果我想从 True 项中随机选择 75%,则输出将是以下任何一项:
# array3 = [True, False, True, True, False, False]
# array3 = [False, False, True, True, True, False]
# array3 = [True, False, False, True, True, False]
第三个数组包含在第二个数组中找到的 4 个 True 项中的 3 个。我怎样才能做到这一点?
【问题讨论】:
-
要使用链接的,请执行:
make_more_sparsey(a,int(np.round(len(idx)*(1-0.75))))。即使用函数实现中的idx。 -
@Divakar 你从哪里得到我要求替换
random元素的想法?我想从True元素中选择随机集。 “链接的问题”显然没有我需要的答案。 -
它不是随机选择元素,而是从 True 元素中选择。请再次阅读问答。
-
@Divakar 我现在明白了,谢谢。
标签: python arrays numpy random