【问题标题】:R squared for K-NN method in RR中的K-NN方法的R平方
【发布时间】:2020-01-21 00:00:24
【问题描述】:

我们有一个通过 KNN 方法预测 Y 的数据库,我们正在寻求估计预测的误差 (Ypredict-Yobserved),我的问题是如何计算 R 中此类模型的 R 平方? 谢谢你,

【问题讨论】:

  • 你有一些关于如何在 R 中生成模型的工作代码吗?

标签: r prediction knn


【解决方案1】:

您可以使用Wikipedia 中的公式计算此值

由于您没有提供任何数据,我将使用内置的mtcars数据进行说明。我会把它全部写出来,以便于映射到维基百科公式。

library(FNN)
TestSample = sample(nrow(mtcars), 5)
## predict values of mpg for the test sample
MTC_KNN = knn.reg(mtcars[-TestSample, -1], 
            mtcars[TestSample, -1], mtcars[-TestSample, 1]) 

## Now compute R-square
SSres = sum((mtcars[TestSample, 1] - MTC_KNN$pred)^2)
SStot = sum((mtcars[TestSample, 1] - mean(mtcars[-TestSample, 1]))^2)
Rsquare = 1 - SSres/SStot

【讨论】:

    【解决方案2】:

    由于您没有提供数据,我主要只是在这里提供了一些数据。实现类似于第一个答案,但您应该为此使用函数。

           # Y_Predict <- c(1:10)
           #Y_Observed <- c(10:19)
    
    
    
            rss <- function(Y_Predict,Y_Observed)
            {
              return(sum((Y_Predict - Y_Observed) ^ 2))
            }
    
            tss <- function(Y_Predict,Y_Observed)
            {
              return(sum((Y_Observed - mean(Y_Observed)) ^ 2))
            }
    
    
            r_square <- function(rss,tss)
            {
              return(1 - (rss(Y_Predict,Y_Observed)/ tss(Y_Predict,Y_Observed)))
            }
    
            #Confirming it runs
            # rss(Y_Predict,Y_Observed)
            #tss(Y_Predict,Y_Observed)
            #r_square(Y_Predict,Y_Observed)
    

    【讨论】:

      【解决方案3】:
      preds <- c(1:10)
      actual <- c(11:20)
      
      # Residuals sum of squares
      rss <- sum((preds - actual) ^ 2)
      
      # Total sum of squares (proportional to the variance of the observed data)
      tss <- sum((actual - mean(actual)) ^ 2)
      
      # Coefficient of determination R2
      r_square = 1 - (rss/tss)
      

      【讨论】:

        猜你喜欢
        • 2014-04-27
        • 1970-01-01
        • 1970-01-01
        • 2016-04-07
        • 2012-06-11
        • 2016-04-14
        • 2015-01-21
        • 2019-09-15
        • 2017-04-15
        相关资源
        最近更新 更多