python - 如何从列表中排除某些数字

标签 python numpy networkx

import networkx as nx
import numpy as np
import random
from networkx.utils import powerlaw_sequence


W=powerlaw_sequence(100,exponent=2.5)

random.choice(W)

如果我希望这个序列的数字是除零之外的任何数字怎么办?或特定范围内的任何数字?例如,最小值为 1。或者甚至在从序列中选择随机数时分配此条件。

powerlaw_sequence(100,exponent=2.0,range(1,20)) 和 powerlaw_sequence(100,exponent=2.0,xmin=1) 都不起作用。谢谢

最佳答案

我不知道 numpy,所以也许还有另一种可能的解决方案,但以下应该可行:

W = [x for x in powerlaw_sequence(100,exponent=2.5) if x != 0]

但是,这会根据 x != 0 条件过滤掉的元素数量减少 W 的长度。

关于python - 如何从列表中排除某些数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9016591/

相关文章:

Python、QT 和 matplotlib 散点图与 blitting

python - 在 Jupyter 笔记本中默认配置第一个单元格

python - 如何正确绘制 networkx 图

python - 如何将相关子列表的唯一ID分配给共享评论元素的子列表的每个元素?

python - 一个时间序列的网格数据最实用的python数据结构是什么?

python - 如何描述两个字典的比率的笛卡尔乘法?

python - 最高后密度区和中央可信区

python - Bokeh 重叠条形图?

python - 如何制作一个接受 numpy 数组、可迭代对象或标量的 numpy 函数?

python - 运行示例时出错