如何利用 YYModel 来解析嵌套模型

如何利用 YYModel 来解析嵌套模型,第1张

1.先对模型嵌套分析:

假设我们最初拿到的数据是一个装着省模型(provinceModel)的字典数组,里面有:省名字 NSString *province,

children (城市模型 cityModel) 字典数组 在城市模型中有:城市名字 NSString *city, children (区模型 districtModel) 的字典数组;区模型中装着区名字。

2.利用 YYModel 对嵌套模型进行解析:

1.最外层:provinceModel(省模型) : NSString *province , NSArray<cityModel *>*children (里面装的是城市模型),也需要做字典装模型,所以要在 .m 中实现协议的这个方法:

+ (NSDictionary *)modelContainerPropertyGenericClass {

return @{@“children”:[cityModel class]}

}

返回 Model 属性容器中需要存放的对象类型,YYModel 会自动进行处理

2.第二层:cityModel (城市模型) : NSString *city , NSArray<districtModel *>*children (里面装的是区模型),也需要做字典转模型,故也要在 .m 中实现协议的这个方法:

+ (NSDictionary *)modelContainerPropertyGenericClass {

return @{@“children”:[districtModel class]}

}

返回 Model 属性容器中需要存放的对象类型,YYModel 会自动进行处理

3.第三层:districtModel (区模型) : NSString *district.

这就是一个简单的嵌套模型检验。全模型包含beta1和beta2,将beta1=1-beta2代入全模型得到简化模型,也就是简化模型不包含beta1,对两个模型进行回归分别得到全模型和简化模型的回归平方和/或者残差平方和,两个模型回归平方和的差/或者残差平方和的差,除以其自由度(自由度是全模型和简化模型回归系数个数的差值,这里自由度为1)作为分子,全模型的MSE(残差平方和除以其自由度)作为分母,这个比值符合F分布。

不一样。

巢式Logit模型是在一般Logit模型基础上的一种改进模型,它考虑了各选择枝之间的相关性,对具有相似性的各选择枝进行了分类,因此该模型更接近实际情况,但同时也使得模型及其算法变得复杂,难以得到广泛采用.通过分析这两种模型的内在关系,提出了一种求解巢式Logit模型的方法,该方法直观,程序化强,便于应用;并通过示例说明了该方法的计算过程;嵌套模型事实上是将变量分层进行考虑,可能有多个方案,并不是符合IIA假设,有些方案是相关的,嵌套模型通过分层,通过分层形成树形结构(如图1)。把总分类成为根部(root),第一层(level1)称为树干(limb),各类之间是不相关的,而第二层(level2)称为树枝(branch),每一类中的各个方案之间允许相关。不同类之间的方案是不相关的。也可以考虑设置为更多层的嵌套结构,例如树枝之下是树杈(twig)。

选择实验获得的数据主要通过离散选择模型来完成。离散选择模型中,最主要的是logit模型,对嵌套logit模型进行回归之前,首先需要对树形的嵌套结构进行定义。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/170015.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-25
下一篇2023-03-25

发表评论

登录后才能评论

评论列表(0条)

    保存