我使用的是Statistics::Regression
的Perl模块,它可以很好地运行多变量回归,但是,如果我在构造函数中只提供一个回归函数
my $reg = Statistics::Regression->new("Sample Regression", ['X']);
它会显示以下消息:
Statistics::Regression:new: Cannot run a regression without at least two variables.
人们也有同样的问题吗?错误消息的措辞不清楚,所以我解释为好像我没有提供响应变量。但事实并非如此,因为根据它的文档和我在旁边测试的一些示例脚本,构造函数中的列表引用应该只包含回归变量。
在任何情况下,你如何运行一个单变量回归(没有常数项)使用这个模块?(我知道Statistics::OLS
可以做到这一点,但为了简单起见,我希望这个模块的工作。无论如何,感觉像一个愚蠢的遗漏,如果它真的不能处理。)谢谢!
2条答案
按热度按时间xzlaal3s1#
该模块的说明如下:
Regression.pm 是一个多元线性回归软件包。
考虑到这一点,你似乎不太可能让它做单变量回归。
不过你可以试着发邮件给the author,因为
Statistics::Regression
已经发布给CPAN四年了,所以他可能已经停止支持它了(或者它的状态很好,不需要更多的发布),但是值得一试,听听他的意见,他可能有一些想法来修补它以处理一元回归。icomxhvb2#
若要使其适用于一元变量,请指定一个常量,如下所示:(include的第一个参数是y,第二个参数是[ constant,x ])。如果不需要截距,也可以指定0作为常量
在此blog中查找详细说明