⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lr.pl

📁 Unix/Linux 网络时间协议版本3 Network Time Protocol Version 3 (NTP) distribution for Unix systems
💻 PL
字号:
;#;# lr.pl,v 3.1 1993/07/06 01:09:08 jbj Exp;#;#;# Linear Regression Package for perl;# to be 'required' from perl;#;#  Copyright (c) 1992 ;#  Frank Kardel, Rainer Pruy;#  Friedrich-Alexander Universitaet Erlangen-Nuernberg;#;#;################################################################# y = A + Bx#### B = (n * Sum(xy) - Sum(x) * Sum(y)) / (n * Sum(x^2) - Sum(x)^2)#### A = (Sum(y) - B * Sum(x)) / n###### interface##*lr_init   = *lr'lr_init;	#';# &lr_init(tag); initialize data set for tag*lr_sample = *lr'lr_sample;	#';# &lr_sample(x,y,tag); enter sample*lr_Y      = *lr'lr_Y;		#';# &lr_Y(x,tag); compute y for given x *lr_X      = *lr'lr_X;		#';# &lr_X(y,tag); compute x for given y*lr_r      = *lr'lr_r;		#';# &lr_r(tag);   regression coeffizient*lr_cov    = *lr'lr_cov;	#';# &lr_cov(tag); covariance*lr_A      = *lr'lr_A;		#';# &lr_A(tag);   *lr_B      = *lr'lr_B;		#';# &lr_B(tag);*lr_sigma  = *lr'lr_sigma;	#';# &lr_sigma(tag); standard deviation*lr_mean   = *lr'lr_mean;	#';# &lr_mean(tag);#########################package lr;sub tagify{    local($tag) = @_;    if (defined($tag))    {      *lr_n   = eval "*${tag}_n";      *lr_sx  = eval "*${tag}_sx";      *lr_sx2 = eval "*${tag}_sx2";      *lr_sxy = eval "*${tag}_sxy";      *lr_sy  = eval "*${tag}_sy";      *lr_sy2 = eval "*${tag}_sy2";    }}sub lr_init{    &tagify($_[$[]) if defined($_[$[]);    $lr_n   = 0;    $lr_sx  = 0.0;    $lr_sx2 = 0.0;    $lr_sxy = 0.0;    $lr_sy  = 0.0;    $lr_sy2 = 0.0;}sub lr_sample{    local($_x, $_y) = @_;    &tagify($_[$[+2]) if defined($_[$[+2]);    $lr_n++;    $lr_sx  += $_x;    $lr_sy  += $_y;    $lr_sxy += $_x * $_y;    $lr_sx2 += $_x**2;    $lr_sy2 += $_y**2;}sub lr_B{    &tagify($_[$[]) if defined($_[$[]);    return 1 unless ($lr_n * $lr_sx2 - $lr_sx**2);    return ($lr_n * $lr_sxy - $lr_sx * $lr_sy) / ($lr_n * $lr_sx2 - $lr_sx**2);}sub lr_A{    &tagify($_[$[]) if defined($_[$[]);    return ($lr_sy - &lr_B * $lr_sx) / $lr_n;}sub lr_Y{    &tagify($_[$[]) if defined($_[$[]);    return &lr_A + &lr_B * $_[$[];}sub lr_X{    &tagify($_[$[]) if defined($_[$[]);    return ($_[$[] - &lr_A) / &lr_B;}sub lr_r{    &tagify($_[$[]) if defined($_[$[]);    local($s) = ($lr_n * $lr_sx2 - $lr_sx**2) * ($lr_n * $lr_sy2 - $lr_sy**2);    return 1 unless $s;        return ($lr_n * $lr_sxy - $lr_sx * $lr_sy) / sqrt($s);}sub lr_cov{    &tagify($_[$[]) if defined($_[$[]);    return ($lr_sxy - $lr_sx * $lr_sy / $lr_n) / ($lr_n - 1);}sub lr_sigma{    &tagify($_[$[]) if defined($_[$[]);    return 0 if $lr_n <= 1;    return sqrt(($lr_sy2 - ($lr_sy * $lr_sy) / $lr_n) / ($lr_n));}sub lr_mean{    &tagify($_[$[]) if defined($_[$[]);    return 0 if $lr_n <= 0;    return $lr_sy / $lr_n;}&lr_init();1;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -