我有一个大型数据框,其中包含包括美国在内的 7 个不同国家(列)从 1970 年 1 月到 2009 年 12 月(行)的月度股票收益。我的任务是使用 4 个不同时间段(即 70 年代、80 年代、90 年代和 00 年代)的值对每个国家的股票收益(因变量)回归美国股票收益(自变量)。
数据集 (.csv) 可在以下网址下载: https ://docs.google.com/file/d/0BxaWFk-EO7tjbG43Yl9iQVlvazQ/edit
这意味着我有 24 个回归要单独运行并报告结果,我已经使用该lm()
函数完成了这些。但是,我目前正在尝试更智能地使用 R 并创建自定义函数来实现我的目的并产生 24 组结果。
我创建了子数据框,其中包含根据知道十年中有 120 个月的时间段聚类的观察结果。
seventies = mydata[1:120, ] # 1970s (from Jan. 1970 to Dec. 1979)
eighties = mydata[121:240, ] # 1980s (from Jan. 1980to Dec. 1989)
nineties = mydata[241:360, ] # 1990s (from Jan. 1990 to Dec. 1999)
twenties = mydata[361:480, ] # 2000s (from Jan. 2000 to Dec. 2009)
注意:每个新创建的变量都是 120 x 7 矩阵,用于 7 个国家/地区的 120 次观察。
使用 Java 运行 24 次回归将需要使用叠瓦式for
循环。
谁能提供我必须采取的步骤来编写一个能够达到预期结果的函数?一些 R 代码片段也将不胜感激。我也认为该mapply
功能将被使用。
谢谢,如果我的帖子需要编辑,请告诉我。