clip
说明
示例
将数据向量中的值裁剪到范围 [3, 6]。生成的向量包含指定边界内的值,其中所有小于 3 的值都替换为 3,所有大于 6 的值都替换为 6。
X = 1:7; C = clip(X,3,6)
C = 1×7
3 3 3 4 5 6 6
创建一个 7×4 数值矩阵。
col = [1:7]'; X = repmat(col,1,4)
X = 7×4
1 1 1 1
2 2 2 2
3 3 3 3
4 4 4 4
5 5 5 5
6 6 6 6
7 7 7 7
裁剪矩阵每列中的值。下界中的每个元素(指定为行向量)设置输入数据对应列允许的最小值。上界(指定为标量)为输入数据的所有列设置允许的最大值。
lower = [1 2 3 4]; upper = 6; C = clip(X,lower,upper)
C = 7×4
1 2 3 4
2 2 3 4
3 3 3 4
4 4 4 4
5 5 5 5
6 6 6 6
6 6 6 6
创建一个 4×7 数值矩阵。
row = 1:7; X = repmat(row,4,1)
X = 4×7
1 2 3 4 5 6 7
1 2 3 4 5 6 7
1 2 3 4 5 6 7
1 2 3 4 5 6 7
裁剪矩阵每行中的值。下界的每个元素(指定为列向量)设置输入数据对应行允许的最小值。上界(指定为标量)为输入数据的所有行设置允许的最大值。
lower = [1; 2; 3; 4]; upper = 6; C = clip(X,lower,upper)
C = 4×7
1 2 3 4 5 6 6
2 2 3 4 5 6 6
3 3 3 4 5 6 6
4 4 4 4 5 6 6
将数据向量中的值裁剪到最大值 0。要仅裁剪到上界,请将下界指定为 -Inf
。此值表示没有下界,clip
将任何超出上界的值替换为上界值。
X = -6:6; C = clip(X,-Inf,0)
C = 1×13
-6 -5 -4 -3 -2 -1 0 0 0 0 0 0 0
或者,要仅裁剪到下界,请将上界指定为 Inf
。
创建一个包含不同数据类型的三个变量的表。
num = rand(6,1); num2 = single(rand(6,1)); dt = datetime(2016:2021,1,1)'; T = table(num,num2,dt)
T=6×3 table
num num2 dt
_______ _______ ___________
0.81472 0.2785 01-Jan-2016
0.90579 0.54688 01-Jan-2017
0.12699 0.95751 01-Jan-2018
0.91338 0.96489 01-Jan-2019
0.63236 0.15761 01-Jan-2020
0.09754 0.97059 01-Jan-2021
为单行表中不同数据类型的变量指定边界。
lower = table(0.2,single(0.1),datetime(2018,1,1),VariableNames=["num" "num2" "dt"])
lower=1×3 table
num num2 dt
___ ____ ___________
0.2 0.1 01-Jan-2018
upper = table(0.9,Inf,datetime(2020,1,1),VariableNames=["num" "num2" "dt"])
upper=1×3 table
num num2 dt
___ ____ ___________
0.9 Inf 01-Jan-2020
裁剪表中的 num
和 dt
值,并将包含裁剪数据的表变量追加到输入表变量。
C = clip(T,lower,upper,DataVariables=["num" "dt"],ReplaceValues=0)
C=6×5 table
num num2 dt num_clipped dt_clipped
_______ _______ ___________ ___________ ___________
0.81472 0.2785 01-Jan-2016 0.81472 01-Jan-2018
0.90579 0.54688 01-Jan-2017 0.9 01-Jan-2018
0.12699 0.95751 01-Jan-2018 0.2 01-Jan-2018
0.91338 0.96489 01-Jan-2019 0.9 01-Jan-2019
0.63236 0.15761 01-Jan-2020 0.63236 01-Jan-2020
0.09754 0.97059 01-Jan-2021 0.2 01-Jan-2020
或者,如果您将边界指定为仅包含 num
和 dt
的边界的单行表,则不需要指定 DataVariables
名称-值参量。
输入参数
输入数据,指定为标量、向量、矩阵、多维数组、表或时间表。
clip
忽略 X
中的缺失值。
数据类型: double
| single
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| categorical
| datetime
| duration
| table
| timetable
裁剪数据的下界,指定为标量、向量、矩阵、多维数组或单行表。lower
必须小于或等于上界,并且具有与输入数据兼容的大小。有关详细信息,请参阅基本运算的兼容数组大小。
通过将 lower
指定为标量,对 X
的所有元素使用相同的下界。通过分别将 lower
指定为行向量或列向量,对 X
中的每列或每行使用不同下界。
对于表输入数据,当要操作的表变量具有不同数据类型时,请将下界指定为单行表。单行表的变量名称必须与要操作的表变量的名称相同。
要仅裁剪到下界,请将上界指定为 Inf
。
裁剪数据的上界,指定为标量、向量、矩阵、多维数组或单行表。upper
必须大于或等于下界,并且具有与输入数据兼容的大小。有关详细信息,请参阅基本运算的兼容数组大小。
通过将 upper
指定为标量,对 X
的所有元素使用相同的上界。通过分别将 upper
指定为行向量或列向量,对 X
中的每列或每行使用不同上界。
对于表输入数据,当要操作的表变量具有不同数据类型时,请将上界指定为单行表。单行表的变量名称必须与要操作的表变量的名称相同。
要仅裁剪到上界,请将下界指定为 -Inf
。
名称-值参数
以 Name1=Value1,...,NameN=ValueN
的形式指定可选参量对组,其中 Name
是参量名称,Value
是对应的值。名称-值参量必须出现在其他参量之后,但对各个参量对组的顺序没有要求。
示例: clip(X,lower,upper,ReplaceValues=false)
要对其进行操作的表变量,指定为下表中的选项之一。DataVariables
值指示要裁剪的输入表或时间表的哪些变量。
只有表和时间表输入数据支持 DataVariables
。
表中未由 DataVariables
指定的其他变量会传递给输出,而不会对其进行运算。如果不指定 DataVariables
,clip
将对 X
中的所有变量进行操作。
索引方案 | 要指定的值 | 示例 |
---|---|---|
变量名称 |
|
|
变量索引 |
|
|
函数句柄 |
|
|
变量类型: |
|
|
示例: clip(X,lower,upper,DataVariables=["Var1" "Var2" "Var4"])
替换值指示符,当 X
是表或时间表时,指定为以下数值或逻辑值之一:
true
或1
- 将输入表变量替换为包含经过裁剪的数据的表变量。false
或0
- 将所有已操作的表变量追加到输入表。追加的变量包含裁剪的数据。
只有表和时间表输入数据支持 ReplaceValues
。
示例: clip(X,lower,upper,ReplaceValues=false)
版本历史记录
在 R2024a 中推出
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)