varfun
应用函数表或时间表变量
描述
例子
应用Element-Wise函数
定义和应用以聪明元素函数表的变量平方的所有元素。
定义一个表包含数值变量。
一个=表([0.71;-2.05;-0.35;-0.82;1.57],[0.23;0.12;-0.18;0.23;0.41])
一个=5×2表Var1 Var2 _____ _____ 0.71 0.23 -2.05 0.12 -0.35 -0.18 -0.82 0.23 1.57 0.41
定义匿名函数找到一个输入的平方。
func = @ (x) x ^ 2;
应用函数表的所有变量一个
。
B = varfun(函数)
B =5×2表Fun_Var1 Fun_Var2说0.5041 0.0529 4.2025 0.0144 0.1225 0.0324 0.6724 0.0529 2.4649 0.1681
的变量B
有名称基于函数和变量名称的一个
。
应用函数,它返回标量矢量
计算一个5×2表中每个变量的均值。
定义一个表包含数值变量。
一个=表([0.71;-2.05;-0.35;-0.82;1.57],[0.23;0.12;-0.18;0.23;0.41])
一个=5×2表Var1 Var2 _____ _____ 0.71 0.23 -2.05 0.12 -0.35 -0.18 -0.82 0.23 1.57 0.41
定义匿名函数来找到一个输入的意思。
func = @mean;
函数
使用现有的MATLAB®函数定义的操作。
应用函数表的所有变量一个
。
B = varfun(函数)
B =1×2表mean_Var1 mean_Var2替-0.188 - 0.162
B
是一个表,它包含每个变量的平均值。返回一个数值向量而不是一个表,您可以使用B = varfun(函数,“OutputFormat”,“统一”)
。
函数适用于组内变量
计算变量的group-wise意味着在一个表,一个
,并返回表中的行,B
。
创建一个表,一个变量定义组。
({=表“test2”;“test1”;“test2”;“test3”;“test1”},…(0.71;-2.05;-0.35;-0.82;1.57],[0.23;0.12;-0.18;0.23;0.41])
一个=5×3表Var1 Var2 Var3 _____ _____ _____ {test2的}0.71 - 0.23 {test1的}-2.05 0.12 {test2的}-0.35 - -0.18 {‘test3} -0.82 - 0.23 1.57 - 0.41 {test1的}
定义匿名函数来找到一个输入的意思。
func = @mean;
函数
使用现有的MATLAB®函数定义的操作。
应用函数定义为每组数据Var1
。
B = varfun(函数,“GroupingVariables”,“Var1”)
B =3×4表Var1 GroupCount mean_Var2 mean_Var3 _____ __________替{test1的}2 -0.24 - 0.265 {test2的}2 0.18 - 0.025 {‘test3} 1 -0.82 - 0.23
B
包含一个变量GroupCount
从表显示条目的数量一个
在这个群体。
功能适用于组织内的时间表变量
创建一个包含示例数据的时间表。还行乘以的时间表定义组。
dt = datetime(2016年,1,1)+天([0 1 1 2 3 3])';=时间表(dt, [0.71; -2.05; -0.35; -0.82; 1.57; 0.09),…[0.23;0.12;-0.18;0.23;0.41;0.02),…“VariableNames”,{“x”“y”})
一个=6×2时间表dt x y ___________ _____ _____ 01 - 1月- 2016 0.71 0.23 02 - 1月- 2016年-2.05 - 0.12 02 - 1月- 2016年-0.35 - -0.18 03 - 1月- 2016年-0.82 - 0.23 04 - 2016年1月- 2016年1月1.57 - 0.41 04 - - 0.09 - 0.02
计算group-wise意味着变量的时间表。varfun
返回B
作为一个时间表,因为一个
是一个时间表。当你指定行乘以作为分组变量,你不能任何变量指定为另一个分组变量。
B = varfun (@mean,“GroupingVariables”,“dt”)
B =4×3的时间表dt GroupCount mean_x mean_y ___________ __________交01 - 1月- 2016年1月1 0.71 - 0.23 02 - - 2016 2 -1.2 - -0.03 03 - 1月- 2016年1 1月-0.82 - 0.23 04 - - 2016 2 0.83 - 0.215
输入参数
函数
- - - - - -函数
函数处理
函数,指定为一个函数处理。您可以定义的函数在一个文件或一个匿名函数。如果函数
对应于多个函数文件(也就是说,如果函数
代表一组重载函数),MATLAB®确定哪些函数来调用基于类的输入参数。
使用“OutputFormat”、“细胞”
名称-值对的论点,如果函数函数
将一个输入参数,并返回数组,每次调用不同数量的行。否则,函数
必须返回数组具有相同的行数。
例子:func = @ (x) x ^ 2;
计算每个元素输入的平方。
一个
- - - - - -输入表
表|时间表
输入表,指定为一个表或一个时间表。
名称-值参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:“数据源”,2
只使用第二个变量一个
作为一个输入函数
。
数据源
- - - - - -说明符的选择变量一个
要传递给函数
正整数|向量的正整数|字符串数组|特征向量|单元阵列的特征向量|模式
标量|逻辑向量|函数处理
说明符的选择变量一个
要传递给函数
,指定为逗号分隔两人组成的“数据源”
一个正整数,向量的正整数,字符串数组,特征向量,单元阵列的特征向量,模式
标量、逻辑向量,或一个函数处理。
如果您指定“数据源”
作为处理函数,那么它必须返回一个逻辑标量和varfun
通过变量一个
在函数返回1
(真正的
)。
GroupingVariables
- - - - - -一个或多个变量一个
定义一组行
正整数|向量的正整数|字符串数组|特征向量|单元阵列的特征向量|模式
标量|逻辑向量
一个或多个变量一个
定义组行,指定为逗号分隔组成的“GroupingVariables”
一个正整数,向量的正整数,字符串数组,特征向量,单元阵列的特征向量,模式
标量,或逻辑向量。
的价值“GroupingVariables”
指定哪个表变量分组变量,不是他们的数据类型。一个分组变量可以是数字,或数据类型分类
,calendarDuration
,datetime
,持续时间
,逻辑
,或字符串
。
行一个
有相同的分组变量值属于同一个组。varfun
适用于函数
每一组在每个变量的行一个
,而不是整个变量。
如果任何分组变量包含南
值(如s或失踪NaT
年代,未定义的分类值,字符串或失踪),那么相应的行不属于任何群体,并被排除在输出。
行标签可以分组变量。你可以组仅行标签,在一个或多个变量一个
一起,或行标签和变量。
如果
一个
是一个表,那么标签行名称。如果
一个
是一个时间表,然后标签行乘以。
输出,B
,每组一行的行输入,一个
。
如果您指定
“OutputFormat”、“制服”
或“OutputFormat”、“细胞”
,然后输出列对应于输入表变量函数
被应用到。如果您指定
“OutputFormat”、“表”
或“OutputFormat”、“时间表”
,然后输出有:变量对应变量输入表
函数
被应用到。变量对应分组变量。
一个新的变量,
GroupCount
,其值输入的行数一个
每组中。
OutputFormat
- - - - - -的格式B
“汽车”
(默认)|“表”
|“时间表”
|“统一”
|“细胞”
的格式B
,指定为逗号分隔两人组成的“OutputFormat”
和的值“汽车”
,“表”
,“时间表”
,“统一”
,或“细胞”
。
|
|
|
如果 |
|
如果 |
|
|
|
|
ErrorHandler
- - - - - -如果要调用的函数函数
失败
函数处理
如果要调用的函数函数
失败,指定为逗号分隔组成的“ErrorHandler”
和一个函数处理。定义这个函数,让它重新抛出错误或返回有效输出函数函数
。
MATLAB调用指定的错误处理函数有两个输入参数:
与这些字段的结构:
标识符
错误的标识符。
消息
错误消息文本。
指数
索引变量的错误发生。
的名字
变量名称的错误发生。
输入参数的设置功能
函数
在错误的时间。
例如,
函数[A, B] = errorFunc (S (S,变长度输入宗量)警告。标识符,S.message) =南;B =南;
扩展功能
高大的数组
计算和数组的行比装入内存。
这个函数支持高阵列的限制:万博1manbetx
的
函数
高输入必须始终返回一个数组。万博1manbetx支持名称-值对是:
“数据源”
——不能被指定为一个函数处理或模式表达式。“GroupingVariables”
——价值不能模式表达式。“OutputFormat”
——价值可以“统一”
,“表”
,“时间表”
,或“细胞”
只有。
当输入数组是一个高大的时间表
“OutputFormat”
是“时间表”
指定的函数必须返回一个数组,第一个维度作为输入的大小相同。指定“OutputFormat”
作为“表”
当输入函数减少等功能的意思是
。
有关更多信息,请参见高大的数组。
C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。
使用笔记和限制:
函数处理输入,
函数
,必须是常数。同时可以输入函数处理
varfun
本身,它们不能被输入到你的入口点函数。指定函数
在针对代码生成的代码。有关更多信息,请参见函数处理限制代码生成(MATLAB编码器)。所有名称-值参数的值必须是常数。
的值
“数据源”
和“GroupingVariables”
名称-值参数不支持模式表达式。万博1manbetx的
“ErrorHandler”
名称-值参数不支持代码生成。万博1manbetx适应不支持输入参数。万博1manbetx
在生成的代码分组变量不能有重复的值。
你不能指定的值
“OutputFormat”
作为“细胞”
如果你指定“GroupingVariables”
名称-值参数,函数将返回一个不同的数据类型为每个变量指定的“数据源”
。如果输入是一个时间表,你指定
“GroupingVariables”
,然后输出始终是一个不规则的时间表。如果您指定团体和团体的数量是在编译时不知道,数量是零,那么空的双变量的输出可能大小1-by-0在生成的代码。在MATLAB中,这些变量0-by-0大小。
版本历史
介绍了R2013bR2023a:“OutputFormat”
名称-值参数可以“汽车”
作为一个价值
的“OutputFormat”
名称-值参数可以“汽车”
作为一个值。这个值是默认值。它会导致varfun
返回一个输出的数据类型匹配输入的数据类型一个
。
Beispiel offnen
您有一张这本Beispiels geanderte版本。您这本Beispiel麻省理工学院古老Anderungen offnen吗?
MATLAB-Befehl
您有窗户的链接geklickt,汪汪汪der diesem MATLAB-Befehl entspricht:
在das MATLAB-Befehlsfenster Fuhren您窝Befehl军队Eingabe来自。浏览器unterstutzen MATLAB-Befehle。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。