Stata:双变量联合核密度函数图-kdens2
作者:吴俊樊 (中山大学)
邮箱:wujf35@mail2.sysu.edu.cn
目录
1. 背景介绍
1.1 多维核密度估计
1.2 多维核函数
1.3 双变量联合核密度函数图
2. 命令介绍
3. Stata 实例
4. 结语
5. 参考资料
6. 相关推文
温馨提示: 文中链接在微信中无法生效。请点击底部「阅读原文」。或直接长按/扫描如下二维码,直达原文:
1. 背景介绍
1.1 多维核密度估计
多维核密度估计 (Multivariate kernel density estimation) 是多维随机变量的核密度估计。给定一组独立同分布的样本 , 都是 维的向量,设其联合概率密度函数为 ,多维核密度函数如下:
其中 为多维核函数 (非负、积分为 1,符合联合概率密度性质), 为 的对称且正定矩阵。
1.2 多维核函数
多维核函数是定义在多维空间上的核函数,主要分为乘积核和放射核。设 维随机变量 ,则:
乘积核
放射核
在实际应用中我们经常使用多维高斯乘积核。以其二维乘积核为例,我们使用 Stata 命令 twoway contour
绘制其三维等高线图:
. clear
. set obs 625
. gen x = (mod((_n-mod(_n-1,25)-1)/25,25)-12)/12
. gen y = (mod(_n-1,25)-12)/12
. gen z = normalden(x,0,2)*normalden(y,0,2) //二维乘积核
. twoway contour z x y, level(15)
1.3 双变量联合核密度函数图
在多维核密度估计后,超过两维的多维核密度函数图无法进行绘制。对于二维核密度函数图即双变量联合核密度函数图,我们可以 Stata 命令 kdens2
进行绘制。
2. 命令介绍
kdens2
命令使用高斯核进行二维核密度估计,并使用 twoway contour
或 twoway contourline
命令绘制三维的双变量联合核密度函数图。
* 命令安装
net install kdens2.pkg, replace
* 命令语法
kdens2 varnameY varnameX [if exp] [in range] [, options]
其中,options
如下:
xwidth
:变量 X 的带宽,默认为最优带宽;ywidth
:变量 Y 的带宽,默认为最优带宽;n
:估计使用的样本点数,默认为 min(N, 50);saving
:同时保存图片和数据;nodraw
:不显示图片;color
:将绘图命令从twoway contourline
变为twoway contour
,即加入颜色分布。
同时 twoway contourline
和 twoway contour
中的相关选项也都可以使用:
levels
:设定组数;ccuts
:设定起始值、结束值和组间距;ccolors
:设定不同区域的颜色;scolor
:设定起始颜色;ecolor
:设定结束颜色。
3. Stata 实例
首先我们调用 Kleiber 和 Zeileis (2008) 的 Grunfeld.dta 数据集。接下来我们对数据进行简单处理,并设置一副白色的背景风格,以便于绘图:
. webuse grunfeld, clear //调用数据
. /*
> 数据集为面板数据, 包括了企业截面和时间上的投资、市值等特征
> invest: 企业的投资额; mvalue: 企业的市值
> */
. gen linv = log(invest)
. label var linv "Log[Investment]"
. gen lmkt = log(mvalue)
. label var lmkt "Log[Mkt value]"
. net install schemepack.pkg, replace //安装绘图模板
. set scheme white_tableau //设置绘图模板
我们可以通过 kdens2
绘制双变量联合核密度函数图,并通过 level
选项设定组数:
· kdens2 linv lmkt, levels(10)
通过使用 color
选项,我们可以加入颜色分布:
· kdens2 linv lmkt, levels(10) color
通过使用 ccuts
、scolor
、ecolor
选项,我们可以手动设定起始值、结束值、组间距和区域的颜色:
. kdens2 linv lmkt, color ccuts(0(.04).2) scolor(yellow) ecolo
4. 结语
kdens2
命令的出现填补了 Stata 中双变量联合核密度函数图绘制的空白,可以帮助我们直观地分析双变量的联合密度分布。但由于命令默认使用高斯乘积核,存在一定的局限性。
5. 参考资料
Baum C. KDENS2: Stata module to estimate bivariate kernel density[J]. 2012. -Link- Stata manual: graph twoway contour -Link- Multivariate kernel density estimation -Link- 多维核密度估计 -Link-
6. 相关推文
Note:产生如下推文列表的 Stata 命令为:
lianxh 绘图, m
安装最新版lianxh
命令:
ssc install lianxh, replace
专题:Stata绘图 Stata绘图:太美了!羊皮卷风格图形 Stata绘图:自定义绘图利器-palettes 史上最牛Stata绘图模版-schemepack:酷似R中的ggplot2-袁子晴 Stata绘图:addplot-层层叠加轻松绘图 Stata 绘图:用 Stata 绘制一打精美图片-schemes 常用科研统计绘图工具介绍 Stata空间计量:莫兰指数绘图moranplot命令介绍 Stata绘图-组间差异可视化:不良事件火山图、点阵图 Stata绘图极简新模板:plotplain和plottig-T251 给你的图形化个妆:Stata绘图常用选项汇总-上篇 给你的图形化个妆:Stata绘图常用选项汇总-下篇 Stata绘图:柱状图专题-T212 Stata绘图:回归系数可视化-论文更出彩 Stata绘图:世行可视化案例-条形图-密度函数图-地图-断点回归图-散点图 Stata绘图:随机推断中的系数可视化 Stata绘图:重新定义坐标轴刻度标签 Stata绘图:用-bytwoway-实现快速分组绘图 Stata绘图:一个干净整洁的-Stata-图形模板qlean Stata绘图:怎么在Stata图形中附加水平线或竖直线? Stata绘图:在图片中添加虚线网格线 Stata绘图:制作教学演示动态图-GIF Stata绘图:绘制一颗红心-姑娘的生日礼物 Stata绘图:bgshade命令-在图形中加入经济周期阴影 Stata绘图:让图片透明——你不要掩盖我的光芒 Stata:图形美颜-自定义绘图模板-grstyle-palettes Stata绘图:多维柱状图绘制 Stata绘图:用暂元统一改变图形中的字号 一文看尽 Stata 绘图 Stata绘图:绘制单个变量的时序图
New! Stata 搜索神器:
lianxh
和songbl
GIF 动图介绍
搜: 推文、数据分享、期刊论文、重现代码 ……
👉 安装:
. ssc install lianxh
. ssc install songbl
👉 使用:
. lianxh DID 倍分法
. songbl all
🍏 关于我们
连享会 ( www.lianxh.cn,推文列表) 由中山大学连玉君老师团队创办,定期分享实证分析经验。 直通车: 👉【百度一下: 连享会】即可直达连享会主页。亦可进一步添加 「知乎」,「b 站」,「面板数据」,「公开课」 等关键词细化搜索。