使用 statset 更改 matlab 中的属性
using statset for changing the properties in matlab
尝试更改 factoran
函数的 optimopts
属性,即 Matlab 中的 TolX
和 TolFun
但显然这些值仍保留为默认值:
optionsFactoran = statset('TolX',1e-4,'TolFun',1e-4)
然后使用因子分析函数:
[lambda,psi,T,stats,F] = factoran(MyMatrix,10,'optimopts',optionsFactoran);
从这里可以看出,值仍然是默认值:
>> statset('factoran')
ans =
Display: 'off'
MaxFunEvals: 400
MaxIter: 100
TolBnd: []
TolFun: 1.0000e-08
TolTypeFun: []
TolX: 1.0000e-08
TolTypeX: []
GradObj: []
Jacobian: []
DerivStep: []
FunValCheck: []
Robust: []
RobustWgtFun: []
WgtFun: []
Tune: []
UseParallel: []
UseSubstreams: []
Streams: {}
OutputFcn: []
欢迎任何想法。
使用输出参数调用 statset
(就像您在问题开头所做的那样)为您提供了 Statistics Toolbox 选项的结构,您可以将其传递给 factoran
等函数。如果显示该结构,您会看到它始终包含每个 Statistics Toolbox 选项的字段,并且每个选项都有一个空值,而不是您指定为输入的值。
您还没有 "set" 任何永久性的东西(没有要设置的全局 "settings"),您刚刚创建了一个包含一些选项的结构。您可以 运行 statset
再次使用不同的输入,它只会给您另一个选项结构 - 同样,没有任何全局设置。
调用 statset
时不带输出参数(就像您在问题末尾所做的那样)并使用函数名称(例如 factoran
作为输入)只会向您显示特定函数的默认值。换句话说,如果您没有传入选项结构来指定其他值,这些值将被使用。
这些始终是该功能的默认值 - 您无法更改它们。如果您想使用不同的东西,您可以创建一个选项结构并将其传入。
尝试更改 factoran
函数的 optimopts
属性,即 Matlab 中的 TolX
和 TolFun
但显然这些值仍保留为默认值:
optionsFactoran = statset('TolX',1e-4,'TolFun',1e-4)
然后使用因子分析函数:
[lambda,psi,T,stats,F] = factoran(MyMatrix,10,'optimopts',optionsFactoran);
从这里可以看出,值仍然是默认值:
>> statset('factoran')
ans =
Display: 'off'
MaxFunEvals: 400
MaxIter: 100
TolBnd: []
TolFun: 1.0000e-08
TolTypeFun: []
TolX: 1.0000e-08
TolTypeX: []
GradObj: []
Jacobian: []
DerivStep: []
FunValCheck: []
Robust: []
RobustWgtFun: []
WgtFun: []
Tune: []
UseParallel: []
UseSubstreams: []
Streams: {}
OutputFcn: []
欢迎任何想法。
使用输出参数调用 statset
(就像您在问题开头所做的那样)为您提供了 Statistics Toolbox 选项的结构,您可以将其传递给 factoran
等函数。如果显示该结构,您会看到它始终包含每个 Statistics Toolbox 选项的字段,并且每个选项都有一个空值,而不是您指定为输入的值。
您还没有 "set" 任何永久性的东西(没有要设置的全局 "settings"),您刚刚创建了一个包含一些选项的结构。您可以 运行 statset
再次使用不同的输入,它只会给您另一个选项结构 - 同样,没有任何全局设置。
调用 statset
时不带输出参数(就像您在问题末尾所做的那样)并使用函数名称(例如 factoran
作为输入)只会向您显示特定函数的默认值。换句话说,如果您没有传入选项结构来指定其他值,这些值将被使用。
这些始终是该功能的默认值 - 您无法更改它们。如果您想使用不同的东西,您可以创建一个选项结构并将其传入。