changeset 28:40664d2d295f draft

Uploaded
author nicolas
date Tue, 25 Oct 2016 14:38:15 -0400
parents 203872c77910
children 89175737f16b
files computeR2.R
diffstat 1 files changed, 11 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/computeR2.R	Tue Oct 25 14:37:45 2016 -0400
+++ b/computeR2.R	Tue Oct 25 14:38:15 2016 -0400
@@ -1,24 +1,26 @@
 ########################################################
 #
 # creation date : 27/06/16
-# last modification : 27/06/16
+# last modification : 22/10/16
 # author : Dr Nicolas Beaume
 # owner : IRRI
 #
 ########################################################
 
-log <- file(paste(getwd(), "log_computeR2.txt", sep="/"), open = "wt")
-sink(file = log, type="message")
-
-library("miscTools")
-library(randomForest)
-
-computeR2 <- function(phenotype, prediction) {
-  return(rSquared(phenotype, (phenotype - prediction))[1,1])
+# compute r2 by computing the classic formula
+# compare the sum of square difference from target to prediciton
+# to the sum of square difference from target to the mean of the target
+computeR2 <- function(target, prediction) {
+  sst <- sum((target-mean(target))^2)
+  ssr <- sum((target-prediction)^2)
+  return(1-ssr/sst)
 }
 ############################ main #############################
+# extract argument
 cmd <- commandArgs(trailingOnly = T)
 source(cmd[1])
+# load target and prediction
 phenotype <- read.table(phenotype, sep="\t", h=T)[,1] 
 predicted <- read.table(predicted, sep = "\t", h=T)[,2]
+# compute r2
 cat(computeR2(phenotype, predicted), file=out)
\ No newline at end of file