品玩SAS:房贷还款的小算盘

2019-06-10 15:25:05 浏览数 (1)

昨晚学习SAS,本已精神萎靡身体空虚就差红牛士力架为继了,恰巧遇见一个有趣的实践案例,瞬间给自己打了一记强心针。不禁感慨,越是接触SAS,越是体会到它的强大,也愈发敬佩SAS公司造物的能力,我们真的是站在了巨人的肩膀上。

辗转反侧间,决心学习SAS之余写写文章,一方面当做是自己的学习笔记,另一方面能通过数据分析给大家带去一些新奇的视角就在好不过了。以后打算借AI机器思维公号的一方天地开个“品玩SAS”的专栏,内容每周一篇,我会尽量挑选一些贴近生活又有趣的小案例来写,希望大家常来做客。

本期“品玩SAS”的主题是大家熟知并且极有可能经历的房贷(全款土豪请上座)。2019年1月全国首套房贷款平均利率为5.66%,还款方式主要是等额本金和等额本息两种,下面我打算买一套一室一厅总价60万的房子,奈何囊中羞涩只能贷款5年40万,又担心银行为刀俎,我为鱼肉(虽然是这样),于是决定用SAS来算一算两种方式的还款情况。

第一种:等额本金(利用函数方式)

月还款额计算公式:月还款金额=(贷款本金/还款月数) (本金-已还本金累计额)*月利率。

SAS程序如下:

%let p=400000; /*贷款额*/

%let m_rate=0.004717; /*月利率*/

data hke;

m=trim('month'); /*月间隔*/

loans_dt='09mar2019'd;

/*贷款日期*/

end_dt='09mar2024'd;

/*结束日期*/

month=intck(m,loans_dt,end_dt);

/*intck函数计算间隔月数*/

m_repay=0;

/*每月还款额初值为0*/

cumpu_repay=0;

/*本金还款额初值为0*/

leiji_repay=0; /*总还款额初值为0*/

lixi_reapy=0; /*总利息初值为0*/

n_month=month; /*剩余还款月数初值*/

format loans_dt yymmdd10. end_dt yymmdd10. ;

do i=1 to month;

m_repay=(&p/month) (&p-cumpu_repay)*&m_rate; /*每月还款金额计算公式*/

put month=n_month;

n_month=n_month-1;

/*剩余还款月数递减*/

cumpu_repay=i*(&p/month);

/*本金还款额累加*/

leiji_repay=leiji_repay m_repay;

/*总还款额累加*/

lixi_reapy=leiji_repay-cumpu_repay;

/*总利息累加*/

output;

end;

label loans_dt="起始日期" end_dt="结束日期"

month="总还款月数" m_repay="月还款额"

eiji_repay="总还款额" lixi_reapy="总利息"

n_month="剩余还款月数"

i="期数";

drop m cumpu_repay;

proc print label;

run;

运行结果显示一共要偿还60个月,也就是60期,总偿还金额为457547.4元,总利息为57547.4元,第一个月偿还8553.47元,往后逐月递减,头几个月鸭梨山大!

图1前10个月还款信息

图2 最后10个月还款信息

第二种:等额本息(利用贷款过程方式)

月还款额计算公式:月还款金额=〔贷款本金×月利率×(1+月利率)^还款月数〕÷〔(1+月利率)^还款月数-1〕

SAS程序如下:

proc loan start=2019:03;

/*调用贷款过程,指定贷款开始日期*/

fixed amount=400000

/*贷款本金40万元*/

rate=5.66

/*年利率5.66%*/

life=60

/*分60期偿还贷款本金和利息*/

interval=month;

/*贷款偿还频率为每月一次*/

run;

图3 等额本息还款信息

运行结果如图3所示,这种方式每个月还款一样,都是7670.04元,前29个月还款金额比等额本金方式少,随后等额本金方式还款金额更低,但最后合计的总利息为60202.45元,比等额本金方式高出2655.05元。从利息角度而言,等额本金方式更占优势。然而综合考量自生收支情况(就是穷!),最终我还是选择了第二种,毕竟在月还款额很低的月份到来之前,我已经被压垮了!

看等额本金的还款方式就像那满溢热恋的高昂到七年之痒的低寒,啊~是金钱的铜臭味!诸位我们下期见~

sas

0 人点赞