matlab - 从matlab中确定的范围中选择的整数的随机向量
问题描述
如何创建具有从确定范围中提取的特定值的向量?只要它们随机发生,重复就会受到欢迎。
例如一个包含 5 个值的向量,所有这些值都是 1 到 80 之间的整数
ps 我正在使用 2019 版的 Matlab
解决方案
您可以使用rand
功能;rand
给出 0 到 1 之间的随机值,但对于范围,您可以使用以下公式。
lowest_val = -10
range = 20 % [-10, 10]
rand_vec = lowest_val + (range)*rand(10,1) % here the range is [-10, 10]
(20)*rand(10,1)
将给出一个介于 0 和 20 之间的随机值,将 -10 添加到其中,范围变为 -10 到 10。
对于您的情况,您可以使用
lowest_val = 1
range = 79 % [1, 80]
rand_vec = lowest_val + (range)*rand(10,1)
(80)*rand(10,1)
将给出一个 0 到 79 之间的随机值,加 1,范围变为 1 到 80
randperm
如果你不想重复,你可以使用。
推荐阅读
- r - R在ifelse中按组改变一列
- angular - Angular 调用 Spring Boot index.html
- typescript - 使用 Typescript 在 Mongoose 中创建新 Schema 时,通用 Schema 类型会做什么?
- image-processing - Python OpevCV,尝试在 Sobel 输出图像上使用 findContours
- java - Flink 流顺序
- c# - SKElement - 为图像创建 xy 滚动条
- c# - 在 c# 中给出 local_address 和 port_number 时如何获取进程 ID?
- javascript - 如何在 .NET 核心(cshtml)的 HTML 表中显示模型中的数据?
- mysql - 在 MySQL 中查询需要很长时间
- git - 迁移到 GIT 后测试应用程序