相关日志
-
-
分享
模型形式的RESET检验法
-
accumulation 2015-1-18 13:15
-
计量经济学中的RESET检验法,是拉姆齐的回归设定误差检验(regression specification error test,RESET);比如,在多元回归模型中,添加显著解释变量的二次项,可以表现出函数的形式(如抛物线形式等),但是这样使用了大量的自由度,此外,添加二次项还不能得到某些被忽略的特定非线性关系;因此,RESET在回归模型方程中添加了OLS拟合值的多项式,以考察函数形式设误的一般形式。 实施RESET,需要在一个扩大回归中包括多个拟合值的函数,在大多数应用研究中,都表明平方项和三次项很有用。这种检验思路与检验异方差的White检验类似。 原估计的拟合值的函数现在作为解释变量出现,在检验中,对估计参数不感兴趣,只是利用扩大后的回归方程来检验原模型中是否遗漏掉了重要的非线性关系;原假设即是:拟合估计值的二次项、三次项前面的参数等于0的F统计量;显著的F统计量表明存在某种函数形式的问题。在大样本情况下,F统计量的分布在原假设和高斯-马尔科夫假定下渐近服从F(2,n-k-3)分布;RESET统计量即F统计值。 因此,RESET统计量较小,相应的p值较大的模型在RESET检验下相对更可取一些。 RESET检验法的不足是,对于无法观测遗漏变量和异方差性的检验,RESET检验则多属误导。
-
个人分类: 计量经济学|0 个评论
-
-
分享
独立试验序列模型
-
accumulation 2015-1-2 02:14
-
1. 重复投掷硬币后正面朝上概率问题 2. 独立试验序列概型计算公式 3. 独立试验序列模型与二项分布 4. P 很小而 n 很大时的第一近似公式:泊松分布 5. P 不是很小而 n 很大时的第二近似公式:正态分布 6. 中心极限定理 7. 一维自由随机游动模型
-
个人分类: 计量经济学|0 个评论
-
-
分享
宏观经济学课件—真实经济周期模型
-
accumulation 2014-12-28 16:54
-
1.经济周期现象 2.宏观经济变量—顺周期性、无周期性、逆周期性 3.经济周期:在经济增长的过程中,产出、消费、投资、就业等变量在长期趋势上下反复波动 4.真实周期理论:供给方面的变动是产出变动的主要原因;通过供给方面的冲击解释产出的变化 5.RBC理论中加入一些劳动市场理论后,可以较好解释就业和失业问题;真实经济理论认为货币市场对于实际经济活动不是很重要,即货币中性 6.凯恩斯理论:短期需求不足;凯恩斯理论的挑战:20世纪70年代的滞涨 7.理性预期革命和真实周期理论因此产生 8.新凯恩斯学派—经济在短期内的波动是源于需求方面的因素,而不是供给方面的因素;凯恩斯学派的基础-价格的粘性;凯恩斯学派与真实周期理论均有一定的局限性 9.凯恩斯学派认为经济在短期由于需求不足从而导致实际产出低于经济的潜在产出,就业规模也低于充分就业 10.广义的资本存量包含企业的固定资本(机器、设备)、存货,还包含政府的资产(道路、桥梁、公立学校、国防武器等基础设施投资),家庭的资产(住宅、汽车、家具等),人力资本(考虑了医疗、教育等对人的影响) 11.长期来看,资本存量与总产出的比值是比较稳定的 12.私人投资的波动性较大,一般波动性是GDP的3-4倍,且是顺周期的 13.政府投资的行为往往不由市场决定,一般来说与衰退间不具有相关性 14.政府投资往往作为一种经济刺激的手段—财政政策,其目标是维持经济的稳定,如就业、信贷市场的稳定,因此政府投资在衰退期间会略有上升 15.净出口在经济波动中的特征:经济高涨时,进口消费相对于出口增加的比较快,逆差较大;经济增长,顺差减少;因此变动率相反 16.生产函数中的资本—当前的投资不能立即决定当前的产出,投资的产出只能在下一阶段体现出来;新古典假设满足所有索洛模型的性质;假设资本投入会得到充分利用,即资本利用率等于100% 17.如果家庭进行投资,那么对于产品需求的总量就等于消费和投资之和 18.资本存量的变化等于净投资 19.资本的自由流动,确保生产者把所有的资本存量有效率的使用 20.前期的资本存量是事先决定的,投资的决策就变为生产者权衡投资成本和收益 21.名义回报率与名义利率的相对大小决定了资本的流向 22.资本的边际产出与折旧率之差等于真实利率 23.资本存量受到利率和折旧率负向的影响;当利率和折旧率上升时,均衡的资本边际产出下降,意愿的资本存量下降 24.总投资需求的函数—折旧率对投资需求的影响方向不确定 25.影响储蓄和投资的因素是不同的,比如净投资需求随着实际利率下降或者资本的边际产量曲线上移而增加。收入的增加或者实际利率上升时,家庭的实际储蓄下降 26.真实经济周期模型:包含了投资的一般均衡模型;总需求部分多出了企业的投资需求;收入效应在此模型中不能抵消:之前的模型中没有投资,所有的信贷之和为零;而此模型中,社会净储蓄是正的,因为投资需要储蓄来弥补;财富效应会抵消一部分消费的增加 27.生产函数的暂时性向上平移,不考虑要素边际产出的变化;总供给和需求都发生向右的平移,但总供给的增加要大于总需求的增加;为了使得市场出清就需要均衡利率的下降来出清 28.模型预测:产出与需求都是顺周期的,而利率是逆周期的,劳动供给略有减少;扩张性的冲击导致了利率的下降,新利率水平下投资水平比原来增加了 29.当生产函数的上移伴随着边际产出的增加,那么家庭会增加劳动力的供给,且暂时性的边际产出增加带来的跨期替代效用也进一步增加了工作量的增加 30.在上述模型中,实际利率是反周期的,但实际数据中预期的实际利率有弱顺周期性 31.实际情况中,总需求扩张大于总供给扩张,导致利率上升,生产函数暂时性的扩张是不足以导致利率上升的 32.当存在持久性的生产函数冲击时,财富效应变得重要,对于消费有着很强的正影响,对于工作量有着很强的负影响,部分抵消了总供给的上升,最终的结果是实际利率不发生变化 33.投资发生大规模变动的原因:资本生产率的变化,即生产函数斜率的变化 34.总需求方的投资需求增加了,实际利率和产出都相应增加了,但上升的利率减少了消费,使得投资的增加大于产出的增加 35.总需求的增加是生产性的,即生产函数的正冲击导致投资需求的增加;生产函数的冲击:暂时性的冲击与持久性的冲击的组合,即短期与长期的冲击,TFP冲击不仅影响生产函数的平移,还影响生产函数旋转;三种变化:暂时性、持久性、MPK的变化
-
个人分类: 宏观经济学|0 个评论
-
-
分享
宏观经济学课件—市场出清模型中的通胀
-
accumulation 2014-12-28 16:17
-
1.货币供给一次性的变化造成价格水平一次性的变动,但不影响长期的利率水平、产出水平和其它真实变量; 2.假设了预期通胀率等于实际通胀率。更一般的情形下,影响家庭跨期决策的是预期的真实利率; 3.货币的回报率与债券的回报率之差,即名义利率决定了持有货币的利息损失; 4.货币的中性:货币数量一次性的变化只影响名义变量,不影响实际变量; 5.货币超中性是对货币中性概念的拓展,指的是货币量随着时间任意的变化(任意时间路径)均不改变所有实际变量; 6.货币中性认为货币的水平值不影响实体经济,而货币超中性认为货币的增长率不影响实体经济; 7.结论:当货币的名义增长率保持恒定时,有以下结论成立:价格水平的增长率等于货币存量的增长率,实际货币余额保持不变;名义利率保持不变,且等于真实利率和通胀率之和,通胀率对于名义利率有着一对一的影响; 8.价格水平上升的幅度取决于:一、名义利率上升的幅度;二、实际货币需求对名义利率的弹性; 9.总结:货币增长率一次性上升带来的结果是:实际利率、实际工资率和产出水平保持不变;通胀率、名义利率、名义工资增长率等于货币增长率; 10.当人们意识到未来增加的通货膨胀后,就会在政策真正实施以前减少货币的需求,从而减少T时刻的通胀的变化带来的损失;这一行为将导致价格水平提前上升,给定真实利率,这也意味着名义利率也会提前上升; 11.当完美预期不存在的时候,未预期到的通货膨胀更容易产生实际效应。比如以名义利率定价的合约,未预期到的通胀将影响债权债务人的财富分配和投资消费决策; 12.通货膨胀与铸币税; 13.货币增长率可以解释为铸币税率,但税基是内生决定的; 14.拉弗曲线;
-
个人分类: 宏观经济学|0 个评论
-
-
分享
宏观经济学课件—市场出清模型
-
accumulation 2014-12-28 15:06
-
市场出清的基本模型: 1.总量一致性条件: (1)总量一致性条件:商品市场、信贷市场、货币市场; (2)总量一致性条件的解决方法:市场出清方法、凯恩斯模型; 2.市场出清: (1)瓦尔拉斯的市场法则; (2)商品市场出清; (3)影响总供给和总需求的因素—利率的跨期替代效应; (4)不影响总供给和总需求的因素; (5)商品市场出清的图解; (6)货币市场出清—利率上升减少真实货币需求,收入增加增大真实货币需求; (7)货币市场出清的图解; (8)一般市场出清与一般均衡理论; (9)市场出清假说—价格的充分调整; (10)市场出清—市场能够自发实现资源的有效配置; (11)市场出清的挑战—凯恩斯学派关于劳动力市场、商品市场与投资的认识; 3.供给冲击: (1)生产函数的暂时变化:平行、按比例; (2)生产函数的持久变化:平行、按比例; (3)实证分析-经济衰退时工作量减少,经济高涨时价格水平降低; (4)供给:生产函数边际产量的变动—均衡的工作量是顺周期的; 4.货币存量的变化: (1)货币存量变化对出清物价水平的影响; (2)货币中性; (3)货币数量论; (4)货币主义; 5.货币需求的变化:金融创新; (1)金融创新导致货币需求函数逆时针旋转; (2)金融创新导致价格水平上升、实际货币余额下降;
-
个人分类: 宏观经济学|0 个评论
-
-
分享
IS-LM模型概念
-
accumulation 2014-12-27 20:43
-
1.IS曲线 IS曲线是指将满足产品市场均衡条件的收入和利率的各种组合点连接起来而形成的的曲线。它反映了产品市场的均衡状态。它表示的是在任何一个给定的利率水平上都有与之对应的国民收入水平,在这样的水平上,投资恰好等于储蓄。在两部门经济中,IS曲线的数学表达为I(r)=S(y)。由于利率上升引起计划投资减少,计划投资减少又引起收入减少,所以IS曲线一般是一条向右下方倾斜的曲线。 IS曲线右边的收入与利率的组合点:储蓄大于投资的非均衡组合点; IS曲线左边的收入与利率的组合点:投资大于储蓄的非均衡组合点; 2.LM曲线 LM曲线是指将满足货币市场均衡条件的收入和利率的各种组合点连接起来而形成的曲线。它反映了货币市场的均衡状态。它表示的是在任何一个给定的利率水平上都有与之对应的国民收入水平,在这样的水平上,货币需求恰好等于货币供给。由于收入水平越高,实际货币余额需求就越高,均衡利率也越高,所以,LM曲线一般是一条向右上方倾斜的曲线。 LM曲线右边的收入与利率的组合点:货币需求大于货币供给的非均衡组合点; LM曲线左边的收入与利率的组合点:货币供给大于货币需求的非均衡组合点。
-
个人分类: 宏观经济学|16 次阅读|0 个评论
-
-
分享
索洛模型的政策含义及其缺陷
-
accumulation 2014-12-27 18:18
-
1.索洛模型的政策含义: 根据索洛增长模型,实现人均产量增加有三种途径:(1)提高技术水平,从而增加总产出;(2)提高储蓄率,使得人均资本存量增加,即资本深化;(3)降低人口出生率,降低资本的扩展化; 2.索洛模型的缺陷: 索洛模型假设资本和劳动可以相互替代,并且是完全替代的;而实际中,资本和劳动的替代是存在的,但是有一定的限度;在生产长期发展过程中,用资本替代劳动是必然趋势,用劳动替代资本却很少发生;索洛增长模型在假定经济中生产函数具有规模报酬不变的特性方面,往往与事实不符,对大多数工业化国家来说,少量的生产投入可能带来大量的产出,而一些发展中国家由于自身条件及ZF政策失误等原因,可能出现规模报酬递减的情形;索洛模型假设稳态增长率是外生的,无法对劳动增长率和技术进步率作出解释;许多学者认为,增长率的外部化是索洛模型在理论上最主要的缺陷;索洛模型得出的结论是:不同国家的经济增长具有趋同性;而现实中,发达国家与发展中国家的差距很大,并且差距可能持续扩大,因此,需要强化有条件趋同的经济增长理论。
-
个人分类: 宏观经济学|22 次阅读|0 个评论
-
-
分享
真实经济周期模型中负向经济冲击的传导放大机制
-
accumulation 2014-12-27 12:03
-
负面冲击主要通过六个传导机制实现冲击的放大:跨期替代、不确定性与不可逆投资、劳动力调整成本、在时间上的集中、粘性工资和价格、金融市场的作用; 1.跨期替代:当存在负面冲击时,人们会选择减少资本和劳动力来应对负面冲击,即跨期替代效应;反之,在经济繁荣期,人们选择更多的投资于更多的劳动力投入;跨期替代会放大负面冲击的影响,此时工作与投资的回报率下降,人们通常会减少工作和投资,这就会让经济形势更不妙,这一过程的连锁反应诱导初始冲击演变为整体经济衰退;在真实经济周期模型中,跨期替代效应会将索洛增长曲线移动的幅度扩大; 2.不确定性与不可逆投资:负面冲击导致不确定性增加,而不确定性对商业投资不利;不可逆投资的代价非常高,因此,不确定性将导致投资放缓,从而使得资源得不到充分利用; 3.劳动力调整成本:对经济的负面冲击,使就业机会发生变化,从而导致更多的搜索和更多的搜索性失业(周期性失业),劳动力调整成本增加;在失业的等待期中,产出和就业会低于正常水平; 4.在时间上的集中:负面冲击导致人们的工作激励下降,这种效应也会导致其他人减少工作时间,即波及他人,共同降低劳动生产率;在时间上集中最明显的例子是“季节性经济周期”; 5.粘性工资和价格:生产冲击导致产出增长率下降,经济体的资本生产效率下降,当工资是粘性的时,负面经济冲击导致实际工资过高,一些工人要失业或雇佣时间减少,从而,总供给会减少得更多; 6.金融市场的作用:真实经济遭到负面冲击,生产率与资本回报率下降,从而导致金融市场指标下跌,引起投资者的恐慌与对未来投资的负向预期,这种预期的自我实现会导致投资者抛售金融资产、进一步减少金融市场上的投资,并导致债券利率上升、风险增大等趋势,从而放大负面冲击; 因此,一个中等程度的负向冲击能够导致严重的生产和就业的大幅下滑。
-
个人分类: 宏观经济学|0 个评论
-
-
分享
项目描述:区域经济类论文(数据来源、建模及实证分析)指导
-
cw4610215 2014-12-25 16:52
-
项目描述:区域经济类论文(数据来源、建模及实证分析)指导 要求:反向抵押贷款的实证分析 完成时间:30天 所需技术:了解基本的数学模型 及分析软件 相关专业
-
39 次阅读|0 个评论
-
-
分享
运用经济周期模型解决实际问题
-
accumulation 2014-12-25 16:15
-
Use RBCmodel and New Keynesian DSGE modelto analyze the following current macroeconomics issues. 1. In his recent policy speech for2014, the Chief Executive of Hong Kong announced the new provisions of morethan HK$10 billion a year for helping low-income households and the elderly. 2. In recent months there have beenextreme weather conditions happening in the world, e.g., the heavy snow stormin the United States and the massive flooding in the United Kingdom. 3. On March 13, 2014, the ReserveBank of New Zealand increased the official cash interest rate by a quarterpercentage point to 2.75%. 4. On November 21, 2014, the People’sBank of China cut its benchmark one-year loan rate by 0.4 percentage point to5.6%, the first interest-rate cut since July 2012.
-
个人分类: 宏观经济学|0 个评论
-
-
分享
原子核模型
-
accumulation 2014-12-25 00:10
-
1.原子核液滴模型 2.原子核壳模型 3.原子核费米气体模型 4.原子核集体模型 5.原子核代数模型 6.原子核α衰变、裂变位垒、同核异能素
-
个人分类: 原子核物理|0 个评论
-
-
分享
预流失模型
-
xulimei1986 2014-11-26 18:09
-
/*环境设置*/ option compress = yes; option bufno=10; %let ctl_dir = D:\SASJOB\CONTROL\DataMining\FFP\Churn; /*可修改环境变量*/ /*读取控制文件*/ data _null_; infile "ctl_dir\Run_Date.txt"; input run_date yymmdd10. run_date_char $1-10 run_month $1-7; format run_date yymmdd10.; call symput('run_date',run_date); call symput('run_date_char',run_date_char); call symput('run_month',run_month); run; data _null_; infile "ctl_dir\data_src.csv" delimiter = ',' MISSOVER DSD lrecl=32767 firstobs=2 ; format line $50. model_dir $50. data_dir $50. member_dir $50. model_id $10.; input line $ model_dir $ data_dir $ member_dir $ model_id $; call symput('line', line); call symput('model_dir', trim(model_dir)); call symput('data_dir', trim(data_dir)); call symput('member_dir',trim(member_dir)); call symput('model_id',trim(model_id)); run; /*读取模型设置文件*/ /*阈值*/ data Churn_Threshold; infile "model_dir\Churn_Threshold.csv" delimiter = ',' MISSOVER DSD lrecl=32767 firstobs=2 ; format Level $10. Description $10. Flight_Threshold 8.2 Mileage_Threshold 8.2 No 3. ; input Level $ Description $ Flight_Threshold Mileage_Threshold No ; n = _n_; call symput('num_of_thresholds',_n_); run; /*data _null_;*/ /*set Churn_Threshold;*/ /*by n;*/ /*call symput(level)*/ /*;*/ /*定义逻辑库*/ libname model "model_dir"; libname data "data_dir\run_month"; libname member "member_dir\run_month"; libname ods odbc user = user password = "line" datasrc = ods; /*生成日期相关宏变量*/ data a; begin_date = intnx('month',run_date,-24); end_date = intnx('month',run_date,0); begin_year = year(begin_date); begin_month = month(begin_date); end_year = year(end_date); end_month = month(end_date); length begin_month_char $7. end_month_char $7. load_time $20.; if begin_month 10 then begin_month_char = compress(begin_year)||'-0'||compress(begin_month); else begin_month_char = compress(begin_year)||'-'||compress(begin_month); if end_month 10 then end_month_char = compress(end_year)||'-0'||compress(end_month); else end_month_char = compress(end_year)||'-'||compress(end_month); if end_month = 1 then end_month_mon = 'JAN'; else if end_month =4 then end_month_mon ='APR'; else if end_month =7 then end_month_mon ='JUL'; else if end_month =10 then end_month_mon ='OCT'; load_time = '01'||end_month_mon||compress(end_year)||' 00:00:00'; load_time_model = '01'||end_month_mon||compress(end_year-1)||' 00:00:00'; format begin_date yymmdd10. end_date yymmdd10.; call symput('begin_date',begin_date); call symput('end_date',end_date); call symput('begin_month_char',begin_month_char); call symput('end_month_char',end_month_char); call symput('load_time',load_time); call symput('load_time_model',load_time_model); run; /*以上环境设置完成*/ /*模型运行开始*/ /*抽取数据*/ /*预测数据*/ data data.tdm_ffp_churn_base_obs_predict; set ods.tdm_ffp_churn_base_obs; where load_time = "load_time"dt; run; /*建模数据*/ data data.tdm_ffp_churn_base_obs_model; set ods.tdm_ffp_churn_base_obs; where load_time = "load_time_model"dt; run; data data.tdm_ffp_churn_base_pfm_model; set ods.tdm_ffp_churn_base_pfm; where load_time = "load_time_model"dt; run; /*数据预处理*/ /*会员信息*/ data data.dm_member_info_all; set member.dm_member_info_all; ffp_date = datepart(ffp_date); birth_date = datepart(birth_date); format ffp_date yymmdd10. birth_date yymmdd10.; keep unite_member_no member_no ffp_date birth_date corp_member_no gender ffp_tier ; run; /*删除测试卡*/ proc sql; delete from data.tdm_ffp_churn_base_obs_predict where member_no in (select member_no from model.test_cards); delete from data.tdm_ffp_churn_base_obs_model where member_no in (select member_no from model.test_cards); delete from data.tdm_ffp_churn_base_pfm_model where member_no in (select member_no from model.test_cards); quit; /*合并观测窗口与表现窗口*/ proc sql; create table Tdm_ffp_churn_base as select a.MEMBER_NO, a.LOAD_TIME, a.FLIGHT_COUNT, a.FLIGHT_COUNT_QTR_1, a.FLIGHT_COUNT_QTR_2, a.FLIGHT_COUNT_QTR_3, a.FLIGHT_COUNT_QTR_4, a.FLIGHT_COUNT_QTR_5, a.FLIGHT_COUNT_QTR_6, a.FLIGHT_COUNT_QTR_7, a.FLIGHT_COUNT_QTR_8, a.FACD_CLASS_COUNT, a.BASE_POINTS_SUM, a.BASE_POINTS_SUM_QTR_1, a.BASE_POINTS_SUM_QTR_2, a.BASE_POINTS_SUM_QTR_3, a.BASE_POINTS_SUM_QTR_4, a.BASE_POINTS_SUM_QTR_5, a.BASE_POINTS_SUM_QTR_6, a.BASE_POINTS_SUM_QTR_7, a.BASE_POINTS_SUM_QTR_8, a.ELITE_POINTS_SUM_YR_1, a.ELITE_POINTS_SUM_YR_2, a.EXPENSE_SUM_YR_1, a.EXPENSE_SUM_YR_2, a.SEG_KM_SUM, a.WEIGHTED_SEG_KM, a.FIRST_FLIGHT_DATE, a.LAST_FLIGHT_DATE, a.FFP_DATE, a.AVG_FLIGHT_COUNT, a.AVG_BASE_POINTS_SUM, a.DAYS_FROM_BEGIN_TO_FIRST, a.DAYS_FROM_LAST_TO_END, a.AVG_FLIGHT_INTERVAL, a.MAX_FLIGHT_INTERVAL, a.MILEAGE_IN_COUNT, a.ADD_POINTS_SUM_YR_1, a.ADD_POINTS_SUM_YR_2, a.EXCHANGE_COUNT, b.AVG_FLIGHT_COUNT_P, b.AVG_BASE_POINTS_SUM_P, b.EXPENSE_SUM_P, b.DAYS_TO_END, b.MILEAGE_IN_COUNT_P, b.EXCHANGE_COUNT_P from data.tdm_ffp_churn_base_obs_model a inner join data.tdm_ffp_churn_base_pfm_model b on a.member_no = b.member_no; quit; /*数据处理*/ %macro deal_data(in_dataset,/*输入数据集*/ datatype,/*建模/预测*/ out_dataset/*包含全部会员的数据集*/ ); data Base_Churn_datatype; /*636260*/ set in_dataset; if seg_km_sum=0 then avg_discount=0; else Avg_Discount=Weighted_seg_km/Seg_km_sum; P1Y_Flight_Count = flight_count_qtr_1+ flight_count_qtr_2+ flight_count_qtr_3+ flight_count_qtr_4;/*观察窗口前1年乘机次数,************************/ L1Y_Flight_Count = flight_count_qtr_5+ flight_count_qtr_6+ flight_count_qtr_7+ flight_count_qtr_8; /*观察窗口最近1年乘机次数,可重点使用该值*********/ P1Y_BASE_POINTS_SUM = BASE_POINTS_SUM_QTR_1 + BASE_POINTS_SUM_QTR_2 + BASE_POINTS_SUM_QTR_3 + BASE_POINTS_SUM_QTR_4 ; /*观察窗口前1年里程积分*/ L1Y_BASE_POINTS_SUM= BASE_POINTS_SUM_QTR_5 + BASE_POINTS_SUM_QTR_6 + BASE_POINTS_SUM_QTR_7 + BASE_POINTS_SUM_QTR_8; /*观察窗口最近1年里程积分,可重点使用该值*****/ ELITE_POINTS_SUM = ELITE_POINTS_SUM_YR_1 + ELITE_POINTS_SUM_YR_2;/*两年精英积分和***********/ ADD_POINTS_SUM = ADD_POINTS_SUM_YR_1 + ADD_POINTS_SUM_YR_2; /*其他积分和*/ Eli_Add_Point_Sum = ELITE_POINTS_SUM + ADD_POINTS_SUM; L1Y_ELi_Add_Points = ELITE_POINTS_SUM_YR_2 + ADD_POINTS_SUM_YR_2;/*近1年的非乘机积分******/ Points_Sum = sum(base_points_sum,elite_points_sum,add_points_sum);/*总积分和**************/ expense_sum = expense_sum_yr_1+expense_sum_yr_2; L1Y_Points_Sum = L1Y_BASE_POINTS_SUM+ELITE_POINTS_SUM_YR_2 + ADD_POINTS_SUM_YR_2;/*近1年积分总和*/ Ration_L1Y_Flight_Count = L1Y_Flight_Count / Flight_Count; Ration_P1Y_Flight_Count = P1Y_Flight_Count / Flight_Count; Ration_P1Y_BPS = P1Y_BASE_POINTS_SUM / (BASE_POINTS_SUM+1);/*前1年里程积分占两年积分比例*/ Ration_L1Y_BPS = L1Y_BASE_POINTS_SUM / (BASE_POINTS_SUM+1);/*后1年里程积分占两年积分比例****/ Point_Chg_NotFlight = MILEAGE_IN_COUNT + EXCHANGE_COUNT; /*卡龄修改为最后一次乘机时间与入会时间时长,以前计算都是数据截至时间与入会时间时长*/ Card_Age=Yrdif (datepart(FFP_DATE), datepart(LAST_FLIGHT_DATE), 'act/act'); run; /*对飞行次数,基本积分做十分位分析*/ proc univariate data=Base_Churn_datatype noprint; var flight_count; output out=Flight_Count_10Percent_datatype pctlpts= 10 20 30 40 50 60 70 80 90 95 99 pctlpre=p_count qrange=iqrange range=range; run; proc univariate data=Base_Churn_datatype noprint; var base_points_sum ; output out=Base_Point_10percent_datatype pctlpts= 10 20 30 40 50 60 70 80 90 95 99 pctlpre=p_point qrange=iqrange range=range; run; /*客户分群,标准根据需求来设置标准,其中超高:5762;高端:25134;中端:194623;低端:410741*/ data Cust_Super_datatype Cust_High_datatype Cust_Median_datatype Cust_Low_datatype out_dataset; set Base_Churn_datatype; if _n_=1 then set Flight_Count_10Percent_datatype; if _n_=1 then set Base_Point_10percent_datatype; array a{3} flight_count base_points_sum avg_discount; array p_count{11} p_count10 p_count20 p_count30 p_count40 p_count50 p_count60 p_count70 p_count80 p_count90 p_count95 p_count99; array p_point{11} p_point10 p_point20 p_point30 p_point40 p_point50 p_point60 p_point70 p_point80 p_point90 p_point95 p_point99; if ( a{1}=p_count99 or a{2}=p_point99) and a{3}=0.8 then do; group_type = 1; output Cust_Super_datatype out_dataset; end; else if ( a{1}=p_count90 and a{1}p_count99 or (a{2}=p_point90 and a{2}p_point99)) and a{3}=0.8 then do; group_type = 2; output Cust_High_datatype out_dataset; end; else if (a{1}=p_count70 or a{2}=p_point70) then do; group_type = 3; output Cust_Median_datatype out_dataset; end; else do; group_type = 4; output Cust_Low_datatype out_dataset; end; drop Range Iqrange p_count10 p_count20 p_count30 p_count40 p_count50 p_count60 p_count70 p_count80 p_count90 p_count95 p_count99 p_point10 p_point20 p_point30 p_point40 p_point50 p_point60 p_point70 p_point80 p_point90 p_point95 p_point99 ; run; %mend deal_data; %deal_data(Tdm_ffp_churn_base,model);/*建模数据处理*/ %deal_data(data.tdm_ffp_churn_base_obs_predict,predict,data.member_grouped);/*预测数据处理*/ /*建立结果表*/ data data.Predict_result_all; set _null_; format MEMBER_NO $20. LOAD_TIME datetime20. VALUE_LEVEL 3. FLIGHT_THRESHOLD best12. MILEAGE_THRESHOLD best12. FLIGHT_COUNT best12. BASE_POINTS_SUM best12. Points_Sum best12. expense_sum best12. avg_discount best12. AVG_FLIGHT_INTERVAL best12. MAX_FLIGHT_INTERVAL best12. DAYS_FROM_BEGIN_TO_FIRST best12. DAYS_FROM_LAST_TO_END best12. FFP_date datetime20. Point_Chg_NotFlight best12. CHURN_PROBABILITY best12. group_tag best12. ; run; /*建模预测*/ %macro churn_score(dataset_model,/*建模数据集*/ dataset_predict,/*预测数据集*/ value_level,/*价值级别*/ no,/*阈值分组序号*/ Count_Coef,/*飞行次数阈值*/ Points_Coef/*积分阈值*/ ); %local num_of_obs; /*定义流失*/ data dataset_model; set dataset_model; if avg_flight_count_p = avg_flight_count * Count_Coef and avg_base_points_sum_p = avg_base_points_sum * Points_Coef then churn = 1; else churn = 0;/*流失类型1*/ run; /*标准差标准化*/ /*建模数据*/ proc standard data = dataset_model out =dataset_model._standard mean= 0 std = 1; var Flight_count /*总乘机次数*/ L1Y_Flight_Count /*最近1年乘机次数*/ Ration_L1Y_Flight_Count /*最近1年的乘机比率*/ Base_points_sum /*升级里程积分*/ Ration_L1Y_BPS /*后1年里程积分占两年积分比例*/ Points_sum /*总累计积分*/ L1Y_Points_Sum /*最近1年观测窗口总累计积分*/ Eli_Add_Point_Sum /**非乘机积分总和*/ L1Y_ELi_Add_Points /**最近1年非乘机积分总和*/ Avg_discount /*平均折扣率*/ Days_from_last_to_end /*最后一次乘机时间至观察窗口末端时长*/ Max_flight_interval /*观察窗口内最大乘机间隔*/ Days_from_begin_to_first /*观察窗口内第一次乘机时间至MAX(观察窗口始端,入会时间)时长*/ Avg_flight_interval /*平均乘机时间间隔*/ Point_Chg_NotFlight /*非乘机的积分变动次数*/ Card_Age /*入会时间长度(卡龄)*/ ; run; /*预测数据*/ proc standard data = dataset_predict out =dataset_predict._standard mean= 0 std = 1; var Flight_count /*总乘机次数*/ L1Y_Flight_Count /*最近1年乘机次数*/ Ration_L1Y_Flight_Count /*最近1年的乘机比率*/ Base_points_sum /*升级里程积分*/ Ration_L1Y_BPS /*后1年里程积分占两年积分比例*/ Points_sum /*总累计积分*/ L1Y_Points_Sum /*最近1年观测窗口总累计积分*/ Eli_Add_Point_Sum /**非乘机积分总和*/ L1Y_ELi_Add_Points /**最近1年非乘机积分总和*/ Avg_discount /*平均折扣率*/ Days_from_last_to_end /*最后一次乘机时间至观察窗口末端时长*/ Max_flight_interval /*观察窗口内最大乘机间隔*/ Days_from_begin_to_first /*观察窗口内第一次乘机时间至MAX(观察窗口始端,入会时间)时长*/ Avg_flight_interval /*平均乘机时间间隔*/ Point_Chg_NotFlight /*非乘机的积分变动次数*/ Card_Age /*入会时间长度(卡龄)*/ ; run; /*建模预测*/ proc logistic data=dataset_model._standard outest=Logistic_Params_value_level._no outmodel=Model_value_level._no covout descending noprint; model churn(event='1') = /*Flight_count /*总乘机次数*/ L1Y_Flight_Count /*最近1年乘机次数*/ Ration_L1Y_Flight_Count /*最近1年的乘机比率*/ Base_points_sum /*升级里程积分*/ L1Y_BASE_POINTS_SUM /*最近1年里程积分*/ Ration_L1Y_BPS /*后1年里程积分占两年积分比例*/ /*Points_sum /*总累计积分*/ L1Y_Points_Sum /*最近1年观测窗口总累计积分*/ /*Eli_Add_Point_Sum /**非乘机积分总和*/ L1Y_ELi_Add_Points /**最近1年非乘机积分总和*/ Avg_discount /*平均折扣率*/ Days_from_last_to_end /*最后一次乘机时间至观察窗口末端时长*/ Max_flight_interval /*观察窗口内最大乘机间隔*/ Days_from_begin_to_first /*观察窗口内第一次乘机时间至MAX(观察窗口始端,入会时间)时长*/ Avg_flight_interval /*平均乘机时间间隔*/ Point_Chg_NotFlight /*非乘机的积分变动次数*/ Card_Age /*入会时间长度(卡龄)*/ / Link = LOGIT selection = stepwise slentry =0.05 slstay =0.05 details Scale=NONE Aggregate /*Scale,Aggregate结合产生卡方与偏差统计值,卡方值越小,表示预测值与观测值之间没有显著差别,拟合越好。偏差值解释同理。*/ LackFit /*HL检验量,显著否?显著,拟合不好,不显著拟合好。*/ Rsquare Stb MAXITER = 100 clparm=wald clodds=pl /* outroc = roc_super*/ ; output out = data.model_result_value_level._no PROB=prob; score data=dataset_predict._standard out=predict_result_value_level._no; run; proc sort data = predict_result_value_level._no; by descending p_1; run; data predict_result_value_level._no; set predict_result_value_level._no; n = _n_; call symput('num_of_obs', _n_); run; data predict_result_value_level._no; set predict_result_value_level._no; location = int(n/(num_of_obs + 1)*100)+1; run; proc sql; create table data.predict_result_value_level._no as select a.MEMBER_NO as MEMBER_NO, a.LOAD_TIME as LOAD_TIME, a.group_type as VALUE_LEVEL, Count_Coef as FLIGHT_THRESHOLD, Points_Coef as MILEAGE_THRESHOLD, a.FLIGHT_COUNT as FLIGHT_COUNT, a.BASE_POINTS_SUM as BASE_POINTS_SUM, a.POINTS_SUM as POINTS_SUM, a.expense_sum as expense_sum, a.AVG_DISCOUNT as AVG_DISCOUNT, a.AVG_FLIGHT_INTERVAL as AVG_FLIGHT_INTERVAL, a.MAX_FLIGHT_INTERVAL as MAX_FLIGHT_INTERVAL, a.DAYS_FROM_BEGIN_TO_FIRST as DAYS_FROM_BEGIN_TO_FIRST, a.DAYS_FROM_LAST_TO_END as DAYS_FROM_LAST_TO_END, a.FFP_date as FFP_date, a.POINT_CHG_NOTFLIGHT as POINT_CHG_NOTFLIGHT, b.p_1 as CHURN_PROBABILITY, b.location as location from dataset_predict a left join predict_result_value_level._no b on a.member_no = b.member_no; quit; proc sql; insert into data.predict_result_all select * from data.predict_result_value_level._no; quit; %mend churn_score; /*按控制数据集Churn_threshold执行建模*/ %macro execute; %local level Flight_Threshold Mileage_Threshold no model_set predict_set; %do i=1 %to num_of_thresholds; data _null_; set Churn_threshold; where n = i; call symput('level',compress(level)); call symput('Flight_Threshold',Flight_Threshold); call symput('Mileage_Threshold',Mileage_Threshold); call symput('no',compress(no)); call symput('model_set','Cust_'||compress(level)||'_model'); call symput('predict_set','Cust_'||compress(level)||'_predict'); run; %churn_score(model_set, predict_set, level, no, Flight_Threshold, Mileage_Threshold); %end; %mend execute; %execute; /*删除不必要保留的数据*/ proc datasets library = data nolist; delete Dm_member_info_all; quit;
-
0 个评论
-
-
分享
主成份分析模型_20141126
-
xulimei1986 2014-11-26 17:42
-
options ls=255 ps=500 sortsize=max sumsize=max bufno=10 nosource nonumber nocenter nodate noxwait noxsync replace; options notes ovp mprint; options compress=yes noerrorabend; options formchar='|-+++++++++++=|-/\*'; option Mprint; /************************************ * 题目 : 南航客户价值模型二阶段 ************************************/ %let path = J:\价值模型二阶段; %let End_Time='30Apr2009'd;/*数据截至日期*/ %let Club_Date='01Nov1998'd;/*明珠俱乐部成立日期*/ %let Macro_Max_Scor=0; %let Macro_Min_Scor=0;/*存放最大分值与最小分值,用于压缩分值至0-100区间。*/ libname data "path"; /****************数据源说明*********************** *所有数据均来自数据集市,根据模型所需变量从集市中抽取相关字段。 *在原生变量基础上构建衍生变量。 *针对存在的缺失值,进行补零处理。 *代码主要运用了standard, princomp等过程。 /*************关键变量******************************* * 最后一次乘机至今时长 * 乘机频率 * 两舱乘机比例 * 平均折扣 * 票价收入 * 票价利润贡献 * 升级里程积分 * 促销积分 * 合作伙伴积分 * 积分兑换次数 * 入会时间长度 * 以下在kpi报表中出现: * 两舱平均折扣率 * 经济舱平均折扣率 * 注册参与促销活动情况 /*************************************************** /* 数据预处理 */ proc sql; /**从value_aft08_0904中删除了4行记录***/ delete from data.value_aft08_0904 where member_no in (select F1 from data.test_member_no ); quit; /*删除飞行次数为空记录,目标记录为2614083.*/ proc sql; delete from data.value_aft08_0904 where Flight_Count= . ; quit; data data.Prepare_variable_1; set data.value_aft08_0904; keep MEMBER_NO FLIGHT_COUNT BASE_MILEAGE_SUM Ration_Point_Flight FC_CABIN_Ratio Avg_Discount FC_Avg_Discount Other_Avg_Discount Fare_Sum Profit PROMOPTIVE_MILEAGE_SUM PARTNER_MILEAGE_SUM Used_Count Card_Age FFP_DATE IND_Pro Last_Flight_Day LastDay_Till_Now ; /* 补缺失值*/ if FLIGHT_COUNT=. then FLIGHT_COUNT=0; if FC_CABIN_COUNT = . then FC_CABIN_COUNT = 0; if FC_WEIGHTED_KM_SUM = . then FC_WEIGHTED_KM_SUM = 0; if FC_FLIGHT_KM_SUM = . then FC_FLIGHT_KM_SUM = 0; if BASE_MILEAGE_SUM = . then BASE_MILEAGE_SUM = 0; if PROMOPTIVE_MILEAGE_SUM = . then PROMOPTIVE_MILEAGE_SUM = 0; if PARTNER_MILEAGE_SUM = . then PARTNER_MILEAGE_SUM = 0; if USED_MILEAGE_SUM = . then USED_MILEAGE_SUM = 0; if ELITE_MILEAGE_SUM = . then ELITE_MILEAGE_SUM = 0 ; if OTHER_CARRIER_MILEAGE = . then OTHER_CARRIER_MILEAGE = 0; if WEIGHTED_KM_SUM = . then WEIGHTED_KM_SUM = 0; if FLIGHT_KM_SUM = . then FLIGHT_KM_SUM = 0; if EXCHANGE_COUNT = . then EXCHANGE_COUNT= 0 ; if UPGRADE_COUNT = . then UPGRADE_COUNT= 0 ; if PROFIT = . then PROFIT = 0 ; if FARE_SUM = . then FARE_SUM = 0; if Ind_Pro = . then Ind_Pro=0;/*注册促销标志*/ if Last_Flight_Day = . then Last_Flight_Day =FFP_DATE;/*如缺省,则设为入会日期,*/ LastDay_Till_Now =1/(DatDif(datepart(Last_Flight_Day), End_Time.,'act/act')+1); if FC_CABIN_COUNT = 0 then FC_CABIN_Ratio = 0; else FC_CABIN_Ratio = FC_CABIN_COUNT / FLIGHT_COUNT ; /* 两舱乘机比例*/ if FLIGHT_KM_SUM = 0 then Avg_Discount= 0; else Avg_Discount = WEIGHTED_KM_SUM / FLIGHT_KM_SUM; if FC_FLIGHT_KM_SUM = 0 then FC_Avg_Discount = 0; else FC_Avg_Discount = FC_WEIGHTED_KM_SUM / FC_FLIGHT_KM_SUM; if (FLIGHT_KM_SUM - FC_FLIGHT_KM_SUM) = 0 then Other_Avg_Discount = 0; else Other_Avg_Discount = ( WEIGHTED_KM_SUM - FC_WEIGHTED_KM_SUM ) / ( FLIGHT_KM_SUM - FC_FLIGHT_KM_SUM ) ; Ration_Point_Flight = BASE_MILEAGE_SUM / FLIGHT_COUNT ; /*平均积分,有否业务上的含义*/ /*卡龄修改为最后一次乘机时间与入会时间时长,以前计算都是数据截至时间与入会时间时长*/ Card_Age=Yrdif (datepart(FFP_DATE), datepart(Last_Flight_Day), 'act/act'); Used_Count = EXCHANGE_COUNT + UPGRADE_COUNT;/*积分兑换次数 */ where load_time = '2009-04'; run; /*对异常数据预处理*/ data data.prepare_variable1; set data.Prepare_variable_1; if BASE_MILEAGE_SUM 0 then BASE_MILEAGE_SUM= 0 ; if PROMOPTIVE_MILEAGE_SUM 0 then PROMOPTIVE_MILEAGE_SUM = 0; if PARTNER_MILEAGE_SUM0 then PARTNER_MILEAGE_SUM= 0;/*对合作伙伴积分小于0的设置为0*/ if Other_Avg_Discount1.03 then Other_Avg_Discount = 1.03;/*对经济舱平均折扣率大于1.03的设置为1.03*/ if LastDay_Till_Now0 then LastDay_Till_Now= 1 ; if Card_Age 0 then Card_Age = 0 ; run; proc standard data = data.prepare_variable out = data.standard_variable mean= 0 std = 1; var /*变量排列体现其对价值的重要性,可设定最不重要的为1,次最不重要的为3,依次类推。*/ Fare_Sum FLIGHT_COUNT FC_CABIN_Ratio Avg_Discount BASE_MILEAGE_SUM Profit Card_Age LastDay_Till_Now PARTNER_MILEAGE_SUM Used_Count PROMOPTIVE_MILEAGE_SUM ; run; ods html file = "path\result\价值变量相关分析.html" ; /*其中 Fare_Sum与Profit, BASE_MILEAGE_SUM高度相关*/ proc corr data = data.standard_variable; var Fare_Sum FLIGHT_COUNT FC_CABIN_Ratio Avg_Discount BASE_MILEAGE_SUM Profit Card_Age LastDay_Till_Now PARTNER_MILEAGE_SUM Used_Count PROMOPTIVE_MILEAGE_SUM ; run; ods html close; /*设置PROMOPTIVE_MILEAGE_SUM,PARTNER_MILEAGE_SUM,Used_Count权值,与飞行次数等不等同*/ data data.standard_variable; set data.standard_variable; /*根据业务对个指标的重视程度,赋予不同变量不同权值*/ Fare_Sum_W = Fare_Sum*(21/121); FLIGHT_COUNT_W = FLIGHT_COUNT*(19/121); BASE_MILEAGE_SUM_W = BASE_MILEAGE_SUM*(17/121); Profit_W = Profit*(15/121); FC_CABIN_Ratio_W = FC_CABIN_Ratio*(13/121); Avg_Discount_W = Avg_Discount*(11/121); Card_Age_W = Card_Age*(9/121); LastDay_Till_Now_W = LastDay_Till_Now*(7/121); PARTNER_MILEAGE_SUM_W = PARTNER_MILEAGE_SUM*(5/121); Used_Count_W = Used_Count*(3/121); PROMOPTIVE_MILEAGE_SUM_W = PROMOPTIVE_MILEAGE_SUM*(1/121); run; ods html file = "path\result\价值主成分分析.html" ; proc princomp data = data.standard_variable cov out = data.prin_result outstat = data.prin_stat; var Fare_Sum_W FLIGHT_COUNT_W BASE_MILEAGE_SUM_W Profit_W FC_CABIN_Ratio_W Avg_Discount_W Card_Age_W LastDay_Till_Now_W PARTNER_MILEAGE_SUM_W Used_Count_W PROMOPTIVE_MILEAGE_SUM_W ; run; ods html close; /* 提取特征根,并特征根重命名 */ data data.Eigenvalues ( drop = _Name_ _Type_ ); set data.Prin_stat; rename Fare_Sum_W = Beta1 FLIGHT_COUNT_W = Beta2 BASE_MILEAGE_SUM_W = Beta3 Profit_W = Beta4 FC_CABIN_Ratio_W = Beta5 Avg_Discount_W = Beta6 Card_Age_W = Beat7 LastDay_Till_Now_W = Beta8 PARTNER_MILEAGE_SUM_W = Beta9 Used_Count_W = Beta10 PROMOPTIVE_MILEAGE_SUM_W = Beta11 ; where _Type_ = 'EIGENVAL'; run; data data.Cust_score; set data.Prin_result; if _n_=1 then set data.Eigenvalues; array var_all{11} Prin1--Prin11; array Beta{11} Beta1--Beta11; keep Member_No Value_Score ; value_score = 0; do i=1 to 3; value_score=value_score+Beta{i}*var_all{i}; end; run; proc sql; create table data.Cust_score_Stat as select a.Member_No, a.Value_Score, b.Fare_Sum, b.FLIGHT_COUNT, b.BASE_MILEAGE_SUM, b.Profit, b.FC_CABIN_Ratio, b.Avg_Discount, b.Card_Age, b.LastDay_Till_Now, b.PARTNER_MILEAGE_SUM, b.Used_Count, b.PROMOPTIVE_MILEAGE_SUM from data.Cust_score a, data.prepare_variable b where a.member_no = b.member_no; quit; data data.Above_Average_stat data.Below_Average_stat; set data.Cust_score_Stat; if value_score =0 then output data.Above_Average_stat; else output data.Below_Average_stat; run; proc sort data = data.Above_Average_Stat; by descending value_score;run; /*取分值最大与最小值放入宏变量中*/ proc sql; select max(Value_Score) into: Macro_Max_Scor from data.Above_Average_Stat; quit; proc sql; select min(Value_Score) into: Macro_Min_Scor from data.Above_Average_Stat; quit; /*将分值压缩在0-100范围,四舍五入到个位数。*/ data data.Above_Average_Stat; set data.Above_Average_Stat; Value_Score_100=ROUND((Value_Score - Macro_Min_Scor)*100 / (Macro_Max_Scor - Macro_Min_Scor),1); run; proc univariate data=data.Above_average_stat noprint; var Value_Score_100; output out=data.Score_Location pctlpts=10 20 30 40 50 60 70 80 90 95 99 pctlpre=p range=iqrange range=range; run; /*给得分>0的会员打上位置标示*/ data data.Above_average_location; set data.Above_average_stat; if _n_=1 then set data.Score_Location; array a{1}value_score_100; array p{11}p10 p20 p30 p40 p50 p60 p70 p80 p90 p95 p99 ; keep member_no value_score_100 location ; if value_score_100=p10 then location=0.1;/*得分介于0以及p10的标示为0.1*/ else if value_score_100=p20 then location=0.2; else if value_score_100=p30 then location=0.3; else if value_score_100=p40 then location=0.4; else if value_score_100=p50 then location=0.5; else if value_score_100=p60 then location=0.6; else if value_score_100=p70 then location=0.7; else if value_score_100=p80 then location=0.8; else if value_score_100=p90 then location=0.9; else if value_score_100=p95 then location=0.95; else if value_score_100=p99 then location=0.99; else location=1.00; run;
-
0 个评论
-
-
分享
拉尼斯-费景汉模型
-
feixiang1hao 2014-10-30 16:10
-
费景汉-拉尼斯模型 费景汉-拉尼斯模型(Ranis-Feimodel)用一种从动态角度研究农业和工业均衡增长的二元结构理论。是1961年费景汉(JohnC.H.Fei)和古斯塔夫·拉尼斯(GustavRanis)对刘易斯模型进行了改进,他们认为因农业生产率提高而出现农业剩余是农业劳动力流入工业部门的先决条件。 费景汉和拉尼斯认为,刘易斯模式有两点缺陷: (1)没有足够重视农业在促进工业增长中的作用; (2)没有注意到农业由于生产率的提高而出现剩余产品应该是农业中的劳动力向工业流动的先决条件! 两人对这两点作了补充,从而发展了刘易斯模式。 1961年,由美国经济学家费景汉和拉尼斯 在《经济发展的一种理论》一文中提出。该模式用刘易斯模式把不发达国家经济部门的划分为基础,把双元经济结构的演变分为三个阶段。 他们把农业劳动的流动过程分为三个阶段。 第一阶段:劳动生产率等于零的那部分劳动力的流出,这部分劳动力是多余的; 刘易斯第一拐点 第二个阶段:边际生产率大于零但小于不变制度工资的劳动力的流出。这两个阶段的劳动是农业中伪装失业者的劳动。 刘易斯第二拐点 第三个阶段:农业劳动的边际产品的价值大于不变制度工资的劳动流出,因此这部分的农业劳动力已经变成了竞争市场的产品。 “费景汉-拉尼斯拐点”的意义是,如果一个国家在工业化过程中,不重视农业生产,不断向工业转移农业资源,就会出现全社会资源都趋向于赢利高的行业,社会资源开始撤离农业,造成农产品总供给的结构性短缺,农产品价格上扬,粮食问题将不可避免。
-
个人分类: 经济学小知识|26 次阅读|0 个评论
-
-
分享
结构方程模型
-
zhxminisa 2014-10-24 15:17
-
哪位大侠有关于结构方程模型的好的学习资料,请留言。谢谢。
-
13 次阅读|0 个评论
-
-
分享
动态股权激励
-
20091125 2014-9-17 14:39
-
动态股权激励模型成果反响: 1、http://t.cn/8sxdPOZ 2、http://t.cn/RhiVBHh(见文中(五)) 动态股权激励创新之路: 02年http://t.cn/hbBsF2 06年http://t.cn/RhiU1YX http://t.cn/RhiGL57 07年http://t.cn/hqab9u 10年http://t.cn/Rhi4PCl http://t.cn/hqrlWB http://t.cn/a0IO7K 11年http://t.cn/hqikti 12年http://t.cn/Rhi4avN http://t.cn/RhibhMn http://t.cn/Rhib2zB http://t.cn/zj75Gbj http://t.cn/RhibXWt 13年http://t.cn/Rhib0tF http://t.cn/RhiG7fH http://t.cn/8F56AY8 14年着手研制EXCEL应用版.........
-
个人分类: 管理创新|120 次阅读|0 个评论
-
-
分享
网络科学(Network Science)简介及经济应用前景
-
ecopen 2014-9-16 14:15
-
" 还原论作为一种范式已经寿终正寝,而复杂性作为一个领域也已疲惫不堪。基于数据的复杂系统的数学模型正以一种全新的视角快速发展成为一个新科学:网络科学 。" 1.1 定义与范畴 网络科学是正在成长和逐渐成熟的一门科学,Moxley认为是对网络的科学研究,这些网络包括:由人、影响力和技术组成的网络。美国国家研究委员会(The National Research Concil)将其定义为利用网络来描述物理、生物和社会现象并建立这些现象预测模型的科学 。总的说来,网络科学是一门交叉的研究领域,其目的是为了发展理论和实际的方法和技术来增强对自然和人工网络的理解。 其研究主要包含两个方面:一是对网络的表示和结构刻画,这要包含到节点和链路的类型,以及网络结构特征;二是研究汇聚节点和链路的动态行为特性,网络是动态的,包含了节点和链路的动态。 1.2 经典结构 网络科学的最早研究起源可以追溯到图论的开始,其标志就是哥尼斯堡的“七桥问题”,由欧拉奠定了图论的基础。 经典的网络结构主要有四种: k-规则图:每个节点都有k个邻居。 随机图:任意两个节点之间有连边的概率都相等。第一个随机网络由Gilbert提出,此外还有Erdos和Renyi提出的更著名的生成算法。 小世界模型(网络):规则图和随机图就像是数学家手中的玩具一样,具有很好的结构和规律;但毕竟和实际网络有所出入。实际中的网络成为研究的重点,小世界最早出现的地方是在作家Karinthy的文章中,最著名的要数Milgram的实验和Watts-Strogatz生成过程的提出。小世界网络的特征就是:短路径和高聚类。 无标度网络:之前的网络研究主要是静态情况之下,在动态和偏好连接的两个特征下,产生了无标度网络。无标度网络的来源也是针对一系列实际网络的统计结果得出,第一个模型由Barabasi提出。无标度网络的一个重要特征就是幂律分布下的无标度,可以说Barabasi是一个Power-law crazy。 1.3 经典入门推荐 专业一点的: Networks: An Introduction. Mark Newman, 2010. The structure and Dynamics of Networks. Mark Newman, Barabasi and Watts, 2006.(有书和论文之分,实际是论文集) Characterization of complex network- a survey of measurements Exploring complex networks Network science-theory and applications Complex networks structures and dynamics The structure of complex networks: theory and applications 网络科学导论 http://zhiyuan.sjtu.edu.cn/Course/netsci.htm 复杂网络导论-模型、结构与动力学(英文版)(香港的陈关荣教授主笔,期待~) 捎带趣味性的: 《linked》-Barabasi 万维网的定律 Bursts-the hidden pattern behind everything 预知社会 1.4 数据集 站点: http://www.network-science.org/ http://blog.sciencenet.cn/home.php?mod=spaceuid=237587do=blogid=228595 http://www.freebase.com/ 数据堂 1.5 工具 专业分析工具: Pajet、UCINET、NetworkX、NetMiner 3等 可视化工具: Graphviz、Gephi、Pajet、Cytoscape等 一些数据分析的工具: SAS、SPSS、R、Matlab、DPS等 其他: 社会化媒体 http://www.socialbeta.cn/ 自然语言处理与信息检索共享平台 www.nlpir.org (张华平老师创办的,很给力,里面有很多数据集) 经典小语 影响力水平决定信息传播,但是信息不等同于行为。 没有理性的浪漫恰似末日狂欢,脱离人文思想的计算如同没有方向的诺亚方舟。 不同类型朋友的影响远大于朋友的数量对你的影响。 应用前景 网络科学为多项科学研究提供了方法和工具,随着社交网络的兴起,更是受到了更多广泛的关注。以前也就是网络科学的前身—复杂网络时期,从事这方面研究的主要是物理数学出身的这些人,他们手握数学重型武器,从实际网络出发,对实际网络的一番建模和预测,可以说是精彩绝伦。当社交网络兴起,对信息和疾病等在人与人、地区与地区甚至全球内的传播与影响起到了重要作用,可以说如今发达的交通和信息网络促进了世界更加小。这广泛引起了社会学方面的注意,其中包括了社会营销、传播学甚至心理学等。 网络科学这一新的方法工具也在经济学领域获得越来越多的应用。比如 MIT 的超级大牛 Daron Acemoglu 也对网络科学给予很大的关注, Stanford 搞社会经济网络的大牛 Matthew Jackson ,这两位可说是经济学领域的典型代表。网络科学应用于经济学研究的相关文章也频繁的在AER等顶尖刊物上出现,目前有应用于分析金融危机的传染扩散机制,宏观经济波动等,08年金融危机后网络分析一下子流行起来,还有应用到分析经济社会中的信息扩散、政治经济、人类行为博弈等各个领域,社会科学中流行的社会网络分析就是很好的体现。 一直以来经济学中的微观与宏观都处于分割状态,虽然现在的宏观经济学在建立理论模型的过程越来越多的将微观经济基础融入宏观经济中,但微观和宏观的融合似乎还是貌合神离,说服力很有限。宏观经济系统本质上就是一个复杂的网络系统,是由众多的微观个体通过一定的联系而组织起来的,这正好适宜于运用网络科学的方法来研究,而且微观个体之间的相互联系也可以用网络科学来分析,网络科学的分析模式更接近于现实世界。经济学要真正走上科学性的重生之路,走进现实世界的复杂性,并将微观与宏观融为一体,或许网络科学将是一大突破口。 经济学家们未来应该更多的意识到“网络”这个概念,而不仅仅只是去关注线性或非线性回归这样的东西。怎样把“复杂性”和“网络性”更好的应用到经济社会系统中去,这将是值得一直研究下去的,我也会持续关注这个方向的,希望与各位学习经济学的同伴们共勉! 给两个例子让大家看看网络科学的强大,均出自 Science 杂志上的文章,一个是产品网络,另一个是金融网络。 Complex Network Systems
-
个人分类: 经济学研究|53 次阅读|0 个评论
-
-
分享
ARMA模型是计量经济学家的良心(转贴)~~~~ 转帖自水木社区,作者不详
-
gaojianwqjk 2014-8-28 22:50
-
ARMA模型是计量经济学家的良心(转贴)~~~~ 转帖自水木社区,作者不详 C.S Chu是Hal. White的弟子,南加州和台大的教授,研究方向是时间序列。从他那里学来不少计量上的理念。整理出来供大家参考。以下的第一人称均指Chu。 1、计量建模时一般考虑线性模型,why?我的答案很简单:why not?反正模型的形式是未知的。既然未知,为何不选最简单的线性模型? 2、很多教科书一讨论参数估计,就搬出几大标准:无偏性、有效性和一致性。这几个性质的地位是不一样的。一致性是最重要的,而有效性在它面前微不足道。至于有偏无偏,即使有偏,也可能是一致的;所以无偏性也不重要。在某些特定的条件下,无偏性只是为了保证一致性成立的必要条件而已。 3、当在计量经济学中遇到困难时,往往要回到经济学中寻找答案。 4、不能根据R平方判断模型的优劣。R平方随着解释变量个数的增加而增加,因为Information is never negative。如果高的R平方只是源于更多的解释变量,那么显然高的R平方不代表更好的模型。而且,高的R平方还意味着模型样本外预测的能力较低。 5、在时间序列分析中,R平方超过0.9不是什么大不了的事情,不必为此沾沾自喜;而在横截面分析中,超过0.3的R平方就被看作超级了不起的事情。 6、横截面数据一般包含特定的结构,因此处理起来要小心。 7、ARMA模型是计量经济学家的良心。如果你建的模型的预测能力不如ARMA,那么模型就是失败的。你要敢于拿ARMA去挑战自己。 8、时间序列的回归中,一定要保证内部逻辑的一致性。拿I(0)对I(1)做回归或拿I(1)对I(0)做回归都是不能接受的。当你看到有人直接拿GDP对利率作回归,那他的模型必错无疑。 9、当你看到模型的t值很大时,先不要高兴,因为这很可能是谬误回归的产物。如果此时Durbin-Waston值很小(小于0.5),那么谬误回归的可能性就进一步变大了。 10、在处理联立方程组模型中,一般采用reduced form。reduced form虽然不一定得到原方程组的参数,但用来预测足矣。 11、如果预测误差有相关性,那么模型设定一定有错误。 12、在对用极大似然法得到的参数的渐进分布进行讨论时,千万别忘了信息矩阵等式是一切简化结果的前提。虽然这一等式很难成立,但大部分计量经济学家都默认它成立。 13、在假设检验中,如果模型是线性的而原假设是非线性的,则一般考虑wald test。如果模型是非线性的,则要考虑LM test。 14、在模型设定上有两种思路:一种是由顶至下(top-down),一种是由底至上(bottom-up)。前者是指先设定一大串解释变量,然后一个一个排查;后者是指从最简单的模型入手,逐个往里加解释变量。前者的问题在于包含了多余的变量,致使非有效性产生;而后者遗漏了重要变量,致使不一致性产生。从一致性和有效性的重要程度来看,似乎应当选择前者。但是,除非你能保证那一大串解释变量完全包含了真实的模型,否则那一大串变量的模型也是不一致的。而能做到这一点(包含真实模型),很难。既然都不一致,为何不选择从简单的模型开始呢? 15、在经典假设不满足的情况下,FGLS不比OLS更有效。 16、解决序列相关的传统办法是“准差分法”。但是,序列相关出现,意味着模型设定有问题;应从模型设定上入手解决。 17、在检验序列相关时,DW test针对AR(1)的误差项。即使误差项不满足AR(1),DW test也富含信息。 18、小样本时,DW test比LM test更powerful,因为LM test是一个渐进的检测。 19、递归残差比OLS残差更有信息量。 20、实际操作中,如果存在异方差,仍然使用OLS,但方差估计值要选择Robust Variance. 21、实际操作中,如果存在异方差,且根据OLS方差和Robust方差得到的显著性检验结果相同,那么就没有必要理会异方差的存在。 22、如果必须要修正异方差,就要大胆假设异方差的形式,并用Breusch-Pagan test检验,而不是回避异方差的形式。 23、其他修正异方差的方法包括对数据取对数和把变量变成人均变量。 24、在用Newton-Ralphson方法对非线性模型作迭代时,初始值和步长的选定很重要。 25、在GARCH(1,1)中,误差项的方差在实证中总是趋近于无穷大。尽管后人对此作了修正,但我认为问题出在根本模型的设定。
-
48 次阅读|0 个评论
-
-
分享
数模最优化
-
big__too 2014-8-11 21:56
-
如果开学去接学妹,那么接第几个合适呢?由于报道当天学妹抵达学校的时间没有规律性,你永远不知道下一个会不会更好,可以这样算一下:假定自己学院新生学妹的总数n=90,从数学模型上说,先跳过前面k个人,不管这些人有多好;然后从第k+1个人开始,一旦看到比之前所有人都要好的学妹就该毫不犹豫地上前才是最有效率的手段。假设最合适的学妹出现在了第i个位置(kin),考虑到第i-1个人中的最佳学妹可能出现在前k个人里,这有k/(i-1)的可能,用x来表示k/n的值,并假设n充分大,对1/t进行x到1的积分并简化最终得道p (k)=-x*lnx,对-x*lnx求导,令导数为0,解出X的最优值,x=1/e,约等于37%带入公式得到90*0.37=33.3,因此从第34个学妹开始,出现最佳选择的概率最大。
-
71 次阅读|0 个评论
-
-
分享
男女生表白中的博弈模型
-
陈默cxx 2014-5-13 15:34
-
两个人走到一起并不是一件容易的事 , 其中的种种挫折与艰难有时候比判断经济走势还难。 女孩 再好,男孩也是经过深思熟虑才做出选择的,他知道这样的选择机会成本是很高昂的。对双方来说,一旦选择了这颗树就意味着将失去整个的森林,甚至是有可能失去拥有更有价值的树的机会。这是一个不能不考虑的问题。但选择是必须做出来的。选择了对方是需要下很大的决心的,无异于选择自己的第二次生命,因此要进行各方面的衡量。 可是当决定做出选择的时候,又有一个问题出现了:信息的不对称与信息阻塞。有人知道会有人来喜欢自己的,但是他不知道会是谁喜欢自己。同时,他知道他喜欢某个女孩,但是他不知道那个女孩是否也同样喜欢着他。这是一个比较难于解决的关于信息透明的问题,能够解决这个问题从而获得透明信息的总会给人在爱情方面带来成功。这种信息的不透明会带来极大的成本:这个男孩可能会是很痛苦的,因为,他不知道是否该表白,该在什么时候什么地方表白 , 同样对于女孩也是如此。 在男女情感中,谁先表白都要承受一定的风险,这是一个博弈的过程:如果对方不接受,那是一件很伤自尊心而且极没面子的事,为了避免这种窘境的发生,双方都容易选择自己的占优策略 ---- 互不表白,认为这是自己的最优状态。 从博弈模型可以看出,“两人同时表白”和“一方表白另一方接受”所得到的总效益是相等的: 2+2=3+1=4 ,但由于“个体理性”(自私)因素,两个人在理性决策中首先想到的都是自己,若实施严格最优策略选择,根据 男方: A12=A11,A22=A21,A32=A31.女 方: A21=A11,A22=A12,A23=A13. 那么显然第二种策略便为两人的占优策略,于是 A22 策略组合便形成了一个(唯一)占优策略均衡,也就是“纳什均衡”。 缺乏勇气的人总是打破不了这种平衡。倘若双方都有意愿: A22 ,则这种状态实在是人惋惜。但是男追女隔重山,女追男隔层纱,如果女孩首先打破这个平衡,则往往会招来善意的回应,成功的概率是比较高的。
-
个人分类: 行为经济学|142 次阅读|0 个评论
GMT+8, 2026-2-13 05:08