2017-06-05 11 views
0

RMSEとRsquaredの間の相関関係をプロットして印刷します。私は "postResample"を使って計算すると、私は両方の値を一緒に取得しますが、それらを分離したいと思います。だから私はRにプロットするように頼むと、すべてを一緒にプロットします。誰かがそれを区切るプロットを助けることができますか?postResampleを使用してRMSEとRSquaredを別々に表示

## Ploting residuals 
axisRange <- extendrange(c(observed, predicted)) 
plot(observed, predicted, 
ylim = axisRange, 
xlim = axisRange, 
ylab = 'Predicted', 
xlab = 'Observed', las=1) 

## correlation predicted x observed 
inform = as.character(round(cor(predicted, observed), digits = 2)) 
text(x=10,y=46, paste('Corr =', inform)) 
text(x=10,y=43, paste('RMSE =', inform)) 
text(x=10,y=40, paste('RSquared =', inform)) 

## Adding reference line 
abline(0, 1, col = "darkgrey", lty = 2) 

## Calculating Rsquared and RMSE 
postResample(predicted, observed) 
+1

あなたは例を提供する必要があります。これを読んでください:[Rの素晴らしい再現可能な例を作る方法](https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example) – Masoud

答えて

0

あなたは(R二乗)(RMSE)は、第1及び第2にアクセスする機能postResample()の出力の要素を[]を使用することができます。ここで

は一例です:

postResample(1:10,9:18)[1] 

postResample(1:10,9:18)[2] 

は、だからあなたのコード内で:

## Ploting residues 
axisRange <- extendrange(c(observed, predicted)) 
plot(observed, predicted, 
ylim = axisRange, 
xlim = axisRange, 
ylab = 'Predicted', 
xlab = 'Observed', las=1) 

## correlation predicted x observed 
inform = as.character(round(cor(predicted, observed), digits = 2)) 
text(x=10,y=46, paste('Corr =', inform)) 
text(x=10,y=43, paste('RMSE =', postResample(predicted, observed)[1])) 
text(x=10,y=40, paste('RSquared =', postResample(predicted, observed)[2])) 

## Adding reference line 
abline(0, 1, col = "darkgrey", lty = 2) 
関連する問題