【MATLAB第79期】基于MATLAB的数据抽样合集(sobol、LHS拉丁超立方抽样、Halton、正交/均匀设计、随机rand函数)

本文主要是介绍【MATLAB第79期】基于MATLAB的数据抽样合集(sobol、LHS拉丁超立方抽样、Halton、正交/均匀设计、随机rand函数),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【MATLAB第79期】基于MATLAB的数据抽样合集(sobol、LHS拉丁超立方抽样、Halton、正交/均匀设计、随机rand函数)

一、传统函数

1.指定区间随机生成数据(小数)

[a b]区间随机数生成:
A=a+(b-a)rand(m,n)

m:待生成矩阵A的行数
n: 待生成矩阵A的列数

示例:生成-5到5之间的随机数

%生成随机数在[-5 5]范围内的2×2矩阵
a=-5;
b=5;
A=a+(b-a)*rand(2,2)

A =

      1.27          2.94-4.22          2.69

2.指定区间随机生成数据(整数)

randi - 整数均匀随机分布

A=randi([-5, 5], 2, 2) %-55均匀分布的2x2随机矩阵

A=

     -2.00          3.001.00          4.00

3.指定数值及概率随机生成数据

randsrc - 生成指定范围的随机数
A = randsrc(2, 2, [-5 -2.5 0 2.5 5; 0.2 0.2 0.2 0.2 0.2])
%-5 -2.5 0 2.5 5五个数中随机选生成2x2的矩阵
后面的0.2是每个数对应的概率

A =

      2.50         -2.50-5.00          2.50

4.标准正态分布

randn - 标准正态分布
 A= randn(2, 2)        %标准正态分布的2x2矩阵

A =

      0.82          0.160.73          0.10

二、正交/均匀试验设计

1.正交设计

每个正交表都有一个表头符号,记作LN(mk),表示该正交表有N行k列,每一列由整数1,2,…,m组成。

用表LN(mk)安排试验时,N表示试验次数/处理数,k表示最多可以安排的因素个数(分析因素),m表示各因素的水平数。

常用正交表:
https://www.docin.com/p-2228475212.html

举例:
在这里插入图片描述
如果有三个变量,A B C,其次,每个变量两个水平(范围),即变量值的0.5和1倍。
则可以利用L4(2^3)正交表,得到4个样本。
在这里插入图片描述

2.均匀设计

均匀表与正交表类似。

常用均匀表:
https://www.docin.com/p-2646778286.html
举例:
如果有三个变量,A B C,其次,每个变量五个水平(范围),即变量值的0.1、0.5、1、0.5、2倍。
在这里插入图片描述
均匀设计结果:
在这里插入图片描述

三、SOBOL抽样

ndim=4;%维度为4
minX=[-1.75, 32.4, -1, -234.2];%下限
maxX=[ 3.95, 112.56, 9, 156.37];%上限
popsize=200;%样本数
sobolset是一个准随机点集对象,它从Sobol序列中生成点。Sobol序列是以高度均匀的方式填充空间的基于2的数字序列。
sobol函数结果(其中对变量3进行求整,可取消):
在这里插入图片描述

在这里插入图片描述

四、拉丁超立方抽样

ndim=4;%维度为4
minX=[-1.75, 32.4, -1, -234.2];%下限
maxX=[ 3.95, 112.56, 9, 156.37];%上限
popsize=200;%样本数
LHS抽样结果(其中对变量3进行求整,可取消):
在这里插入图片描述

在这里插入图片描述

五、Halton抽样

ndim=4;%维度为4
minX=[-1.75, 32.4, -1, -234.2];%下限
maxX=[ 3.95, 112.56, 9, 156.37];%上限
popsize=200;%样本数
Halton抽样结果(其中对变量3进行求整,可取消):
在这里插入图片描述

在这里插入图片描述

六、代码获取

后台私信回复“79期”和自动回复的指令即可获取下载链接。

这篇关于【MATLAB第79期】基于MATLAB的数据抽样合集(sobol、LHS拉丁超立方抽样、Halton、正交/均匀设计、随机rand函数)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/245706

相关文章

鸿蒙中Axios数据请求的封装和配置方法

《鸿蒙中Axios数据请求的封装和配置方法》:本文主要介绍鸿蒙中Axios数据请求的封装和配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.配置权限 应用级权限和系统级权限2.配置网络请求的代码3.下载在Entry中 下载AxIOS4.封装Htt

C++ Sort函数使用场景分析

《C++Sort函数使用场景分析》sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变,如果某些场景需要保持相同元素间的相对顺序,可使... 目录C++ Sort函数详解一、sort函数调用的两种方式二、sort函数使用场景三、sort函数排序

C语言函数递归实际应用举例详解

《C语言函数递归实际应用举例详解》程序调用自身的编程技巧称为递归,递归做为一种算法在程序设计语言中广泛应用,:本文主要介绍C语言函数递归实际应用举例的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录前言一、递归的概念与思想二、递归的限制条件 三、递归的实际应用举例(一)求 n 的阶乘(二)顺序打印

C/C++错误信息处理的常见方法及函数

《C/C++错误信息处理的常见方法及函数》C/C++是两种广泛使用的编程语言,特别是在系统编程、嵌入式开发以及高性能计算领域,:本文主要介绍C/C++错误信息处理的常见方法及函数,文中通过代码介绍... 目录前言1. errno 和 perror()示例:2. strerror()示例:3. perror(

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

Kotlin 作用域函数apply、let、run、with、also使用指南

《Kotlin作用域函数apply、let、run、with、also使用指南》在Kotlin开发中,作用域函数(ScopeFunctions)是一组能让代码更简洁、更函数式的高阶函数,本文将... 目录一、引言:为什么需要作用域函数?二、作用域函China编程数详解1. apply:对象配置的 “流式构建器”最

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

MySQL大表数据的分区与分库分表的实现

《MySQL大表数据的分区与分库分表的实现》数据库的分区和分库分表是两种常用的技术方案,本文主要介绍了MySQL大表数据的分区与分库分表的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. mysql大表数据的分区1.1 什么是分区?1.2 分区的类型1.3 分区的优点1.4 分

Mysql删除几亿条数据表中的部分数据的方法实现

《Mysql删除几亿条数据表中的部分数据的方法实现》在MySQL中删除一个大表中的数据时,需要特别注意操作的性能和对系统的影响,本文主要介绍了Mysql删除几亿条数据表中的部分数据的方法实现,具有一定... 目录1、需求2、方案1. 使用 DELETE 语句分批删除2. 使用 INPLACE ALTER T