【重新定义matlab强大系列十一】函数rescale数组元素的缩放范围

news/2024/11/20 19:33:10/

🔗 运行环境:Matlab

🚩 撰写作者:左手の明天

🥇 精选专栏:《python》

🔥  推荐专栏:《算法研究》

#### 防伪水印——左手の明天 ####

💗 大家好🤗🤗🤗,我是左手の明天!好久不见💗

💗今天开启新的系列——重新定义matlab强大系列💗

📆  最近更新:2023 年 05 月 28 日,左手の明天的第 287 篇原创博客

📚 更新于专栏:matlab

#### 防伪水印——左手の明天 ####


🔥函数说明

B = rescale(A) 将数组的条目缩放到区间 [0,1]。输出数组 B 的大小与 A 相同。

B = rescale(A,1,u) 将数组的条目缩放到区间 [l,u]。

B = rescale(___,Name,Value) 为上述任意语法指定缩放数组的其他参数。例如,rescale(A,'InputMin',5) 将 A 中所有小于 5 的元素设置为等于 5,然后缩放到范围 [0,1]。

🔥算法

B = rescale(A,l,u,'InputMin',inmin,'InputMax',inmax) 使用公式

l + [(A-inmin)./(inmax-inmin)].*(u-l)

缩放数组 A 的元素(当 A 的值在 inmin 和 inmax 的边界范围内时)。

  • 如果未指定 l 和 u,则 rescale 分别使用默认值 0 和 1。

  • 如果未指定 'InputMin' 名称-值对组,则 rescale 将其值设置为默认值 min(A(:))

  • 如果未指定 'InputMax' 名称-值对组,则 rescale 将其值设置为默认值 max(A(:))

🔥示例

缩放到单位区间

将向量的条目缩放到区间 [0,1]。

A = 1:5;
B = rescale(A)
B = 1×50    0.2500    0.5000    0.7500    1.0000

缩放到指定范围

将向量的元素缩放到区间 [-1,1]。

A = 1:5;
B = rescale(A,-1,1)
B = 1×5-1.0000   -0.5000         0    0.5000    1.0000

缩放矩阵列和行

通过指定每列的最小值和最大值,将矩阵的每一列缩放到区间 [0,1]。rescale 沿输入数组中与 'InputMin' 和 'InputMax' 参数值的形状对应的维度进行缩放。

A = magic(3)
A = 3×38     1     63     5     74     9     2
colmin = min(A)
colmin = 1×33     1     2
colmax = max(A)
colmax = 1×38     9     7
Bcol = rescale(A,'InputMin',colmin,'InputMax',colmax)
Bcol = 3×31.0000         0    0.80000    0.5000    1.00000.2000    1.0000         0

将 A 的每一行缩放到区间 [0,1]。

rowmin = min(A,[],2)
rowmin = 3×1132
rowmax = max(A,[],2)
rowmax = 3×1879
Brow = rescale(A,'InputMin',rowmin,'InputMax',rowmax)
Brow = 3×31.0000         0    0.71430    0.5000    1.00000.2857    1.0000         0

#### 防伪水印——左手の明天 ####

💗 大家好🤗🤗🤗,我是左手の明天!好久不见💗

💗今天开启新的系列——重新定义matlab强大系列💗

📆  最近更新:2023 年 05 月 28 日,左手の明天的第 287 篇原创博客

📚 更新于专栏:matlab

#### 防伪水印——左手の明天 ####

 


http://www.ppmy.cn/news/98439.html

相关文章

以太坊学习三: Merkle树和验证

Merkle tree简介 Merkle树又称为哈希树,是一种二叉树,由一个根节点、若干中间节点和一组叶节点组成。最底层的叶节点存储数据,在它之上的一层节点为它们对应的Hash值,中间节点是它下面两个子节点的Hash值,根节点是最后…

PriorityQueue优先级队列

前言 优先级队列就是在堆的基础上进行改造,那么什么是堆,又什么是优先级队列呢? 我们一起来看看吧! 目录 前言 一、堆 (一)堆的创建 (二)堆的插入 (三)堆…

【自然语言处理】不同策略的主题建模方法比较

不同策略的主题建模方法比较 本文将介绍利用 LSA、pLSA、LDA、NMF、BERTopic、Top2Vec 这六种策略进行主题建模之间的比较。 1.简介 在自然语言处理(NLP)中,主题建模一词包含了一系列的统计和深度学习技术,用于寻找文档集中的隐…

搭建Plex媒体服务器,打造家庭多媒体中心【公网远程访问】

文章目录 1.前言2. Plex网站搭建2.1 Plex下载和安装2.2 Plex网页测试2.3 cpolar的安装和注册 3. 本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 1.前言 用手机或者平板电脑看视频,已经算是生活中稀松平常的场景了,特别是各…

基于Docker的深度学习环境NVIDIA和CUDA部署以及WSL和linux镜像问题

基于Docker的深度学习环境部署 1. 什么是Docker?2. 深度学习环境的基本要求3. Docker的基本操作3.1 在Windows上安装Docker3.2 在Ubuntu上安装Docker3.3 拉取一个pytorch的镜像3.4 部署自己的项目3.5 导出配置好项目的新镜像 4. 分享新镜像4.1 将镜像导出为tar分享给…

【P36】JMeter 交替控制器(Interleave Controller)

文章目录 一、交替控制器(Interleave Controller)参数说明二、测试计划设计 一、交替控制器(Interleave Controller)参数说明 可以将内部的组件在线程迭代时交替执行;交替控制器内部一般会有多个取样器 选择线程组右…

vue2_计算属性

目录 计算属性 计算属性缓存vs方法 计算属性vs侦听属性 getter和setter 计算属性和监听器 前端调用api实现问答 侦听器 计算属性 鉴于能在插值表达式中写js表达式;这样做也一定程度上违背了设计插值表达式的初衷;特别是: 其实就相当于…

【使用VS开发的第一个QT项目——实现相机功能(包括QT下载、配置、摄像头程序)】

使用VS开发的第一个QT项目 一、QT(WIN10)安装1.首先下载QT(VS有对应的QT)2.安装QT 二、将QT加载到VS中三、QT设置1.在VS"Qt Vs Tools"→"QT Versions"中添加"msvc2017_64"qmake的路径2.在"General"→"QT Designer"中将"…