Biogeme Mlogit 分类变量回归代码

news/2025/10/30 15:02:30/文章来源:https://www.cnblogs.com/Vicrooor/p/19177069
import pandas as pd
from biogeme.database import Database
from biogeme.expressions import Variable
import biogeme.biogeme_logging as blog
from IPython.core.display_functions import display
from biogeme.biogeme import BIOGEME
from biogeme.expressions import Beta, Draws, MonteCarlo, log
from biogeme.models import logit
from biogeme.models import loglogit
from biogeme.results_processing import get_pandas_estimated_parameters#导入数据
df = pd.read_csv('C:/Users/24722/Desktop/CE.csv', sep=',')
#设置分类哑变量
for i in range(1, 7):df[f'A{i}_2'] = 1 * (df[f'A{i}'] == 2)df[f'A{i}_3'] = 1 * (df[f'A{i}'] == 3)df[f'B{i}_2'] = 1 * (df[f'B{i}'] == 2)df[f'B{i}_3'] = 1 * (df[f'B{i}'] == 3)
#查看数据导入情况
print(df.head())
#创建Biogeme数据库对象
database = Database('CE', df)# 定义选择与可用性,av是必须设定的
CHOICE = Variable('CHOICE')
A_AV = Variable('A_AV')
B_AV = Variable('B_AV')#备选常数(ASC)
ASC_A = Beta('ASC_A', 0, None, None, 0)
ASC_B = Beta('ASC_B', 0, None, None, 0)#日志
logger = blog.get_screen_logger(level=blog.INFO)
logger.info('wo bu zhi dao wei shen me yao zhe ge ri zhi.py')# 定义参数(A/B 共享系数)
b_1_lv2 = Beta('b_1_lv2', 0, None, None, 0)
b_1_lv3 = Beta('b_1_lv3', 0, None, None, 0)
b_2_lv2 = Beta('b_2_lv2', 0, None, None, 0)
b_2_lv3 = Beta('b_2_lv3', 0, None, None, 0)
b_3_lv2 = Beta('b_3_lv2', 0, None, None, 0)
b_3_lv3 = Beta('b_3_lv3', 0, None, None, 0)
b_4_lv2 = Beta('b_4_lv2', 0, None, None, 0)
b_4_lv3 = Beta('b_4_lv3', 0, None, None, 0)
b_5_lv2 = Beta('b_5_lv2', 0, None, None, 0)
b_5_lv3 = Beta('b_5_lv3', 0, None, None, 0)
b_6_lv2 = Beta('b_6_lv2', 0, None, None, 0)
b_6_lv3 = Beta('b_6_lv3', 0, None, None, 0)# 构建效用(A/B 共享相同等级的系数;基准等级=1 隐含系数为0),Variable也可在数据导入时转换,例如A1 = Variable('A1')
v_A = (ASC_A+ b_1_lv2 * Variable('A1_2') + b_1_lv3 * Variable('A1_3')+ b_2_lv2 * Variable('A2_2') + b_2_lv3 * Variable('A2_3')+ b_3_lv2 * Variable('A3_2') + b_3_lv3 * Variable('A3_3')+ b_4_lv2 * Variable('A4_2') + b_4_lv3 * Variable('A4_3')+ b_5_lv2 * Variable('A5_2') + b_5_lv3 * Variable('A5_3')+ b_6_lv2 * Variable('A6_2') + b_6_lv3 * Variable('A6_3')
)v_B = (ASC_B+ b_1_lv2 * Variable('B1_2') + b_1_lv3 * Variable('B1_3')+ b_2_lv2 * Variable('B2_2') + b_2_lv3 * Variable('B2_3')+ b_3_lv2 * Variable('B3_2') + b_3_lv3 * Variable('B3_3')+ b_4_lv2 * Variable('B4_2') + b_4_lv3 * Variable('B4_3')+ b_5_lv2 * Variable('B5_2') + b_5_lv3 * Variable('B5_3')+ b_6_lv2 * Variable('B6_2') + b_6_lv3 * Variable('B6_3')
)#设置索引
v = {1: v_A, 2: v_B}
av = {1: A_AV, 2: B_AV}#设定模型1
log_probability = loglogit(v, av, CHOICE)
the_biogeme = BIOGEME(database, log_probability)
the_biogeme.model_name = 'b01logit'#输出结果
results = the_biogeme.estimate()
print(results.short_summary())#输出系数结果
pandas_results = get_pandas_estimated_parameters(estimation_results=results,
)
display(pandas_results)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/950825.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

构建AI智能体:五十三、反应式应急+深思式优化:反应速度与规划智慧的平衡 - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

中间件架构师-混沌工程-蓝绿发布

目录混沌工程(Chaos Engineering):定义、目标与实践指南一、混沌工程的核心目标二、混沌工程的核心原则三、混沌工程的典型实践流程1. 实验准备(Plan)2. 执行实验(Do)3. 分析结果(Check)4. 改进优化(Act)四…

2025年知名的有油空压机厂家最新TOP排行榜

2025年知名的有油空压机厂家最新TOP排行榜 在工业制造领域,空压机作为关键动力设备,广泛应用于机械、电子、化工、食品等多个行业。随着技术的不断进步,市场对有油空压机的需求持续增长,尤其是在高效节能、低噪音…

QOJ8085 Bulbasaur

题意简述 给定一个 \(n\) 层,每层 \(k\) 个点的分层图,每一层向下一层连有一些边。记 \(f(l,r)\) 表示最多能选的路径条数,满足这些路径起点为 \(l\) 层,终点为 \(r\) 层,且互不相交(不包含相同的点)。求 \(\su…

2025 年贵州旅游攻略旅行社推荐:贵州客哪点服务解析,定制化体验与品质保障深度测评

行业背景 贵州以喀斯特地貌的奇绝风光与多民族文化的浓郁风情,成为近年旅游热门目的地,但市场服务质量参差不齐的问题日益凸显。不少游客遭遇过 “模板化” 跟团游的困扰:行程紧凑导致景点打卡式游览,民族文化体验…

Launcher 卡片框架多模块集成

Launcher 卡片框架多模块集成方案一、aar架包集成 最简单直接的方案,卡片侧实现,打成aar包提供到launcher显示 方案二、AppWidget 原生的桌面小组件方案,被限制无法自定义view 底层通过BroadcastReceiver实现 方案三…

从实验室到产线:苏州永创-STD2000X如何统一分立器件静态参数测试仪的“语言”? - FORCREAT

在半导体设计与制造中,静态参数测试是验证器件性能与可靠性的基石。无论是研发阶段的特性分析,还是量产中的质量控制,对器件直流参数、IV曲线、动态响应等关键指标的精准捕捉,都直接影响产品的最终表现。 然而,传…

2025年知名的1500千瓦柴油发电机组品牌厂家排行榜

2025年知名的1500千瓦柴油发电机组品牌厂家排行榜行业概述1500千瓦柴油发电机组作为工业级大功率备用电源解决方案,在数据中心、医院、工厂、矿山和大型商业设施等领域发挥着关键作用。随着全球电力需求持续增长和可再…

2025 年中空锚杆厂家最新推荐榜,自进式 / 注浆型全覆盖,聚焦技术实力与市场口碑深度解析

引言 中空锚杆作为隧道、采矿及边坡工程的核心支护构件,其质量直接决定施工安全系数。当前市场品牌数量较 2020 年增长 67%,但产品合格率仅 78%,材质不达标、锚固力不足等问题频发。为精准筛选优质品牌,本次推荐榜…

2025 年 10 月实验室家具厂家推荐排行榜:通风柜,钢木结构,全钢结构,PP,不锈钢,实验台,落地式,网格桌公司精选

2025 年 10 月实验室家具厂家推荐排行榜:通风柜,钢木结构,全钢结构,PP,不锈钢,实验台,落地式,网格桌公司精选 行业背景与发展趋势 实验室家具作为科研基础设施的重要组成部分,其品质直接影响实验结果的准确性…

洛谷题单指南-进阶数论-P2158 [SDOI2008] 仪仗队

原题链接:https://www.luogu.com.cn/problem/P2158 题意解读:n*n个点组成的方阵中,最左下角的点能看到多少点。 解题思路: 设左下角点的坐标是(0, 0),设从0点能看到的点是(x, y),对于看不到的点必然可以通过将(x…

2025年比较好的注水式热水袋厂家最新权威实力榜

2025年比较好的注水式热水袋厂家最新权威实力榜 随着冬季来临,注水式热水袋因其安全、环保、经济实惠等特点,成为消费者保暖的首选产品。然而,市场上品牌众多,质量参差不齐,如何选择一家值得信赖的厂家成为消费者…

2025 年刹车卡钳厂家最新推荐榜,技术实力与市场口碑深度解析,挖掘适配性与制动性能双优品牌

引言 为精准筛选 2025 年优质刹车卡钳品牌,本次推荐榜测评工作联合中国汽车改装用品协会展开,采用多维度量化评估体系。测评团队从行业核心关注点出发,设置三大核心评估维度:其一为技术适配性,通过实测 128 款主流…

2025年比较好的家用除湿机优质厂家推荐榜单

2025年家用除湿机优质厂家推荐榜单:权威评测与选购指南 随着生活品质的提升,家用除湿机已成为南方潮湿地区、沿海城市乃至北方梅雨季家庭的必备电器。2025年,除湿机市场技术更趋成熟,消费者对能效、静音、智能化的…

2025 年 10 月高尔夫教练权威推荐榜:专业教学与实战提升口碑之选,助您精准挥杆进阶无忧

2025 年 10 月高尔夫教练权威推荐榜:专业教学与实战提升口碑之选,助您精准挥杆进阶无忧 高尔夫运动作为一项兼具技巧性与策略性的体育项目,对教练的专业素养和教学能力提出了极高要求。随着国内高尔夫产业的快速发展…

2025 年北京旅游旅行社最新推荐榜,综合实力与服务竞争力深度解析玩本地 / 纯玩跟团 / 纯玩度假 / 纯玩无购物 / 纯玩无自费旅游推荐

引言 2025 年北京旅游市场迎来品质升级浪潮,消费者对个性化、高品质旅行服务的需求同比增长 47%,但市场中 32% 的旅行社仍存在服务标准化不足、资源整合能力薄弱等问题。为精准筛选优质服务商,本次推荐结合旅行社协…

契约战歌手游新服免费体验,数量有限

契约战歌手游新服免费体验,数量有限契约战歌 - 87游戏官方网站,87游戏,玩出霸气! body { background: linear-gradient(135deg, rgba(26, 42, 108, 1), rgba(31, 103, 178, 1), rgba(253, 187, 45, 1)); animation…

2025年工业吸油吸尘器源头厂家权威推荐榜单:电瓶工业吸尘器/工业除尘设备 /工业防爆吸尘器源头厂家精选

在现代工业生产环境中,高效清洁设备已成为保障生产安全、提升工作效率的重要环节,专业技术厂家通过持续创新推动着行业标准不断提升。 工业吸油吸尘器作为现代工厂清洁的核心装备,其性能直接关系到生产环境的洁净度…

OAuth2 协议解析(安全视角)

OAuth2 协议解析(安全视角)目录Refinition四个核心角色四类常见授权模式授权模式中的术语OAuth2 协议流程解析后端之间的交互流程-包含安全方案设计应用注册与安全凭证发放OAuth2授权码流程为什么用code不直接返回to…

[转] 封装并发任务方法

作者:谢杰 该文章是并发异步操作系列文章第五篇。有了前面几篇文章所介绍的知识铺垫后,本系列最终篇,我们来封装一个能够指定并发上限的方法。 需求 先来过一下需求,封装一个异步方法 runWithConcurrency,如下: …