Shiny App: Predict Diamond Price

wandervogel
2021-03-28

The App for Predicting Diamond Prices

The created shiny app shows the diamonds data and a prediction model. For looking and using the app please follow this link: https://sora725.shinyapps.io/shiny_diamonds/.

  • The slider can be used to restrict the maximal range of the carat number.
  • The different cuts of the diamonds can be shown or hidden in the plot with the checkboxes. Hiding all cuts cause an error. If a box is checked, the data points with the specific cut is hidden.
  • Selecting a rectangle in the plot and then Submit shows a prediction model in the plot.
  • The server.R and ui.R code is published here: https://github.com/725sora/shiny_diamonds

The Data

The analyzed data is the diamonds data frame of the ggplot2 library.

library(ggplot2)
data(diamonds)
summary(diamonds)
     carat               cut        color        clarity          depth      
 Min.   :0.2000   Fair     : 1610   D: 6775   SI1    :13065   Min.   :43.00  
 1st Qu.:0.4000   Good     : 4906   E: 9797   VS2    :12258   1st Qu.:61.00  
 Median :0.7000   Very Good:12082   F: 9542   SI2    : 9194   Median :61.80  
 Mean   :0.7979   Premium  :13791   G:11292   VS1    : 8171   Mean   :61.75  
 3rd Qu.:1.0400   Ideal    :21551   H: 8304   VVS2   : 5066   3rd Qu.:62.50  
 Max.   :5.0100                     I: 5422   VVS1   : 3655   Max.   :79.00  
                                    J: 2808   (Other): 2531                  
     table           price             x                y         
 Min.   :43.00   Min.   :  326   Min.   : 0.000   Min.   : 0.000  
 1st Qu.:56.00   1st Qu.:  950   1st Qu.: 4.710   1st Qu.: 4.720  
 Median :57.00   Median : 2401   Median : 5.700   Median : 5.710  
 Mean   :57.46   Mean   : 3933   Mean   : 5.731   Mean   : 5.735  
 3rd Qu.:59.00   3rd Qu.: 5324   3rd Qu.: 6.540   3rd Qu.: 6.540  
 Max.   :95.00   Max.   :18823   Max.   :10.740   Max.   :58.900  

       z         
 Min.   : 0.000  
 1st Qu.: 2.910  
 Median : 3.530  
 Mean   : 3.539  
 3rd Qu.: 4.040  
 Max.   :31.800  

The Prediction

  • The app predicts diamond prices by carat.

  • The prediction can be done by all data points of the data set or by selection of data points with fair, good, very good, premium or ideal cuts. These can be selected via checkboxes. If a box is checked, the data points with the specific cut is hidden. Hiding all kind of cuts causes an error, but this makes no sense.

  • The used prediction model is a log converted linear regression model.

Plot of Diamond Prediction

The red line in the following plot shows a expample prediction model.

plot of chunk unnamed-chunk-2