在R(终端)和Rstudio中使用lm()可以使用相同的输入数据提供不同的输出

在R(终端)和Rstudio中使用lm()可以使用相同的输入数据提供不同的输出,r,R,我在拟合一个线性模型,根据我使用的是RStudio还是R,我得到了不同的系数;即使我在这两种情况下使用相同的输入数据和相同的代码 我尝试了不同的数据子集(从10行到多达一半的数据),只有在输入整个数据集时才会出现差异 (它太大了,无法粘贴到这里,密码:r) 会话详细信息: 斯图迪奥 > sessionInfo() R version 3.6.0 (2019-04-26) Platform: x86_64-pc-linux-gnu (64-bit) Running under: Debian

我在拟合一个线性模型,根据我使用的是RStudio还是R,我得到了不同的系数;即使我在这两种情况下使用相同的输入数据和相同的代码

我尝试了不同的数据子集(从10行到多达一半的数据),只有在输入整个数据集时才会出现差异

(它太大了,无法粘贴到这里,密码:r)

会话详细信息:

斯图迪奥

> sessionInfo()
R version 3.6.0 (2019-04-26)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Debian GNU/Linux 9 (stretch)

Matrix products: default
BLAS/LAPACK: /usr/lib/libopenblasp-r0.2.19.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=en_US.UTF-8       
 [4] LC_COLLATE=en_US.UTF-8     LC_MONETARY=en_US.UTF-8    LC_MESSAGES=C             
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                  LC_ADDRESS=C              
[10] LC_TELEPHONE=C             LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] compiler_3.6.0   rsconnect_0.8.13 tools_3.6.0    

> find('lm')
[1] "package:stats"

> summary(a)
        a                 b   
 Min.   :  1.002   Min.   :     0.13   
 1st Qu.:  5.887   1st Qu.:  5320.27   
 Median : 14.551   Median : 11739.61   
 Mean   : 25.877   Mean   : 20524.21                     
 3rd Qu.: 34.424   3rd Qu.: 26430.47                     
 Max.   :136.997   Max.   :116315.41  
> lm.transcprot

Call:
lm(formula = I(a$b - 0) ~ 0 + a$a)

Coefficients:
a$a  
    462.5  
终点站

> sessionInfo()
R version 3.6.1 (2019-07-05)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.2 LTS

Matrix products: default
BLAS/LAPACK: /opt/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64_lin/libmkl_rt.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] compiler_3.6.1 tools_3.6.1   

> find('lm')
[1] "package:stats"

> summary(a)
        a                 b   
 Min.   :  1.002   Min.   :     0.13   
 1st Qu.:  5.887   1st Qu.:  5320.27   
 Median : 14.551   Median : 11739.61   
 Mean   : 25.877   Mean   : 20524.21                     
 3rd Qu.: 34.424   3rd Qu.: 26430.47                     
 Max.   :136.997   Max.   :116315.41
> lm.transcprot            

Call:
lm(formula = I(a$b - 0) ~ 0 + a$a)

Coefficients:
a$a  
     1889
获得的输出:

斯图迪奥

> sessionInfo()
R version 3.6.0 (2019-04-26)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Debian GNU/Linux 9 (stretch)

Matrix products: default
BLAS/LAPACK: /usr/lib/libopenblasp-r0.2.19.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=en_US.UTF-8       
 [4] LC_COLLATE=en_US.UTF-8     LC_MONETARY=en_US.UTF-8    LC_MESSAGES=C             
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                  LC_ADDRESS=C              
[10] LC_TELEPHONE=C             LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] compiler_3.6.0   rsconnect_0.8.13 tools_3.6.0    

> find('lm')
[1] "package:stats"

> summary(a)
        a                 b   
 Min.   :  1.002   Min.   :     0.13   
 1st Qu.:  5.887   1st Qu.:  5320.27   
 Median : 14.551   Median : 11739.61   
 Mean   : 25.877   Mean   : 20524.21                     
 3rd Qu.: 34.424   3rd Qu.: 26430.47                     
 Max.   :136.997   Max.   :116315.41  
> lm.transcprot

Call:
lm(formula = I(a$b - 0) ~ 0 + a$a)

Coefficients:
a$a  
    462.5  
终点站

> sessionInfo()
R version 3.6.1 (2019-07-05)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.2 LTS

Matrix products: default
BLAS/LAPACK: /opt/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64_lin/libmkl_rt.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] compiler_3.6.1 tools_3.6.1   

> find('lm')
[1] "package:stats"

> summary(a)
        a                 b   
 Min.   :  1.002   Min.   :     0.13   
 1st Qu.:  5.887   1st Qu.:  5320.27   
 Median : 14.551   Median : 11739.61   
 Mean   : 25.877   Mean   : 20524.21                     
 3rd Qu.: 34.424   3rd Qu.: 26430.47                     
 Max.   :136.997   Max.   :116315.41
> lm.transcprot            

Call:
lm(formula = I(a$b - 0) ~ 0 + a$a)

Coefficients:
a$a  
     1889

你的
dput()
输出看起来不完整(最后一行是
27.254119,72.870086,65.291127,5.71344,62.268586,2
)@BenBolker是的,我想很容易监督它,但在我写的密码链接旁边:你在读数据吗?我们能否从两种环境中查看
str(a)
和/或
摘要(a)
?无论我如何运行它,我都会得到462.5的斜率(Linux r-devel控制台、MacOS r 3.5.1控制台和RStudio)好的,谢谢。现在,R和RStudio会话的
find(“lm”)
sessionInfo()
的结果是什么?如果您使用
stats::lm(…)
来确保获得了正确版本的
lm()
,该怎么办?这两个结果(尤其是你的RStudio版本)都是来自清洁会话吗?@1月份,我知道数据根本没有关联;这就是我之所以这么做的部分原因(将其与另一个模型进行比较)。我猜你的意思是我的终端R是一个腐烂的(?)(因为RStudio是一个给出与你类似结果的终端)。即使尝试以对数比例建模,终端也会给我一条完全没有意义的拟合线,而在RStudio中,它实际上会穿过点云。您的
dput()
输出看起来不完整(最后一行是
27.254119,72.870086,65.291127,5.71344,62.268586,2
)@BenBolker yeah,我想这很容易监督,但在链接旁边我写了密码:你在读数据吗?我们能否从两种环境中查看
str(a)
和/或
摘要(a)
?无论我如何运行它,我都会得到462.5的斜率(Linux r-devel控制台、MacOS r 3.5.1控制台和RStudio)好的,谢谢。现在,R和RStudio会话的
find(“lm”)
sessionInfo()
的结果是什么?如果您使用
stats::lm(…)
来确保获得了正确版本的
lm()
,该怎么办?这两个结果(尤其是你的RStudio版本)都是来自清洁会话吗?@1月份,我知道数据根本没有关联;这就是我之所以这么做的部分原因(将其与另一个模型进行比较)。我猜你的意思是我的终端R是一个腐烂的(?)(因为RStudio是一个给出与你类似结果的终端)。即使尝试以对数比例建模,终端也会给我一条完全没有意义的拟合线,而在RStudio中,它实际上会穿过点云。