尽管大家一致要求EViews提供@cmedian(一个可以求每行数据的median的命令)这个功能,但是EViews一直没有提供。参见:
http://forums.eviews.com/viewtopic.php?f=3&t=9931
http://forums.eviews.com/viewtopic.php?f=3&t=11829
这次我来介绍一下如何自己编程求出一个group里每行的median。注意,如果是panel data,可以通过对pool对象求descriptive statistics来得到每行的median。但是并不是所有的数据都适用这个方法。
代码如下。当中,test是需要求median的group,需要事先定义好。执行完这几行代码会生成一个叫rowmedian的series,当中保存着group里每行的median。
这个程序其实十分简单。即把group存为matrix,然后每次取出一行,求出median,然后保存结果。当然,如果行数很多,这个程序的速度必然不会非常理想。但是在EViews提供一个native的解决方案之前,这也不失为一个实用的办法。有兴趣的朋友可以把它改成一个subroutine,然后就可以更方便的用在自己的程序里了。这个subroutine可以叫做rquantile,接受两个参数,一个是matrix的名字,另一个是quantile,即下述代码中的0.5
实例如下:
group test的内容
执行程序
结果: