pROC Package in r to Calculate AUC-ROC
To create the ROC (Receiver Operating Characteristic) curve object in the R Language, we use the roc() function of the pROC package library. The pROC is an R Language package to display and analyze ROC curves. The roc() function takes the actual and predicted value as an argument and returns a ROC curve object as a result. Then, to find the AUC (Area under Curve) of that curve, we use the auc() function. The auc() function takes the roc object as an argument and returns the area under the curve of that roc curve.
Syntax:
roc_object <- roc( response, prediction )
Parameters:
- response: determines the vector that contains the actual data.
- prediction: determines the vector that contains the data predicted by our model.
Installing and Loading the Libraries
Let’s first install the package using the install.packages() function and then we will load the same using the library() function in R Programming Language.
R
install.packages ( "pROC" ) library (pROC) |
The area under the ROC curve of a logistic regression model.
Initializing the Dataset
Now let’s create a sample dataset and then we will use it to train a model and then calculate the AUC-ROC of the model using pROC.
R
# sample data frame df_train <- data.frame ( x= c (1,2,3,4,5), y= c (1,5,8,15,26), z= c (0,1,1,0,0)) df_test <- data.frame ( x= c (6,7,8), y= c (38,45,72), z= c (0,1,0)) |
Training Model and Calculating ROC
Now let’s train a glm() model on the dataset which we have created above and then make predictions using it. After we get the necessary predictions we will calculate the AUC-ROC value from it.
R
# fit logistic model model <- glm (z ~ x+y, data=df_train) # predicted data prediction <- predict (model, df_test, type= "response" ) # create roc curve roc_object <- roc ( df_test$z, prediction) # calculate area under curve auc (roc_object) |
Output:
Area under the curve: 0.5
How to Calculate AUC (Area Under Curve) in R?
In this article, we will discuss how to calculate the AUC (Area under Curve) of the ROC (Receiver Operating Characteristic) curve in the R Programming Language.