python-3.x - 带尖峰的随机数 gen
问题描述
我正在 python 中生成一些数据,如下所示:
import random
import time
def generate_random_data():
pressure = float(random.randint(2409,2415) / 100)
temp = float(random.randint(6989,7045) / 100)
data = {"pressure": pressure, "temperature": temp}
return data
if __name__ == '__main__':
while True:
rslt = generate_random_data()
print(rslt)
time.sleep(60)
但我还想做的是每隔一段时间在范围外产生一个尖峰......我怎么能在产生一个范围内的数字时做这样的事情?
解决方案
您的代码的一点更新:
import random
import time
def generate_random_data():
peak_chance = random.randint(0, 100)
is_peak = False
if peak_chance < 10: # 10% chance for under-value
pressure = float(random.randint(2309, 2409) / 100)
temp = float(random.randint(6889, 6989) / 100)
is_peak = True
elif peak_chance > 90: # 10% chance for peak-value
pressure = float(random.randint(2415, 2515) / 100)
temp = float(random.randint(7045, 7145) / 100)
is_peak = True
else:
pressure = float(random.randint(2409, 2415) / 100)
temp = float(random.randint(6989, 7045) / 100)
data = {"pressure": pressure, "temperature": temp, "peak": is_peak}
return data
if __name__ == '__main__':
while True:
rslt = generate_random_data()
print(rslt)
time.sleep(1)
输出:
{'pressure': 24.14, 'temperature': 70.4, 'peak': False}
{'pressure': 24.13, 'temperature': 70.2, 'peak': False}
{'pressure': 24.11, 'temperature': 69.97, 'peak': False}
{'pressure': 24.14, 'temperature': 70.42, 'peak': False}
{'pressure': 24.12, 'temperature': 69.95, 'peak': False}
{'pressure': 24.1, 'temperature': 70.26, 'peak': False}
{'pressure': 24.09, 'temperature': 69.95, 'peak': False}
{'pressure': 24.12, 'temperature': 70.02, 'peak': False}
{'pressure': 24.12, 'temperature': 70.0, 'peak': False}
{'pressure': 24.14, 'temperature': 70.15, 'peak': False}
{'pressure': 24.1, 'temperature': 70.3, 'peak': False}
{'pressure': 23.57, 'temperature': 69.8, 'peak': True}
{'pressure': 24.15, 'temperature': 70.13, 'peak': False}
{'pressure': 24.14, 'temperature': 70.23, 'peak': False}
{'pressure': 24.74, 'temperature': 70.7, 'peak': True}
{'pressure': 24.12, 'temperature': 70.22, 'peak': False}
{'pressure': 23.81, 'temperature': 69.24, 'peak': True}
{'pressure': 24.12, 'temperature': 70.13, 'peak': False}
{'pressure': 24.09, 'temperature': 70.33, 'peak': False}
{'pressure': 24.13, 'temperature': 69.95, 'peak': False}
{'pressure': 24.12, 'temperature': 70.13, 'peak': False}
{'pressure': 24.09, 'temperature': 70.35, 'peak': False}
{'pressure': 24.3, 'temperature': 71.18, 'peak': True}
{'pressure': 24.11, 'temperature': 70.26, 'peak': False}
{'pressure': 24.11, 'temperature': 69.98, 'peak': False}
{'pressure': 24.1, 'temperature': 70.11, 'peak': False}
{'pressure': 24.13, 'temperature': 70.16, 'peak': False}
{'pressure': 24.15, 'temperature': 70.05, 'peak': False}
推荐阅读
- google-bigquery - 当使用从 TextIO 到 BigQuery 的无界 PCollection 时,数据卡在 BigQueryIO 内部的 Reshuffle/GroupByKey
- python - 如何在没有标题的情况下读取“.dat 文件”中的特定列,然后存储在列表中以转换赤经和赤纬
- java - -Dhadoop.security.logger' 未被识别为内部或外部命令
- entity-framework-6 - 实体框架 6.2,首先使用 DB 获取运行时列丢失
- java - 如何根据一些变量在 Widget 上应用各种样式?
- sql-server - Dynamics CRM - 用于获取查找相关实体的 SQL 查询
- php - 带有 URL 更改的 Silex 内部重定向?
- python - tkinter(python)框架中的滚动条
- jquery - 访问存储在 Jquery 变量中的类名
- typescript - 映射函数类型时保留参数名称