data<-read.csv("D:/karpur.csv",header=T)
summary(data)
##      depth         caliper         ind.deep          ind.med       
##  Min.   :5667   Min.   :8.487   Min.   :  6.532   Min.   :  9.386  
##  1st Qu.:5769   1st Qu.:8.556   1st Qu.: 28.799   1st Qu.: 27.892  
##  Median :5872   Median :8.588   Median :217.849   Median :254.383  
##  Mean   :5873   Mean   :8.622   Mean   :275.357   Mean   :273.357  
##  3rd Qu.:5977   3rd Qu.:8.686   3rd Qu.:566.793   3rd Qu.:544.232  
##  Max.   :6083   Max.   :8.886   Max.   :769.484   Max.   :746.028  
##      gamma            phi.N            R.deep            R.med        
##  Min.   : 16.74   Min.   :0.0150   Min.   :  1.300   Min.   :  1.340  
##  1st Qu.: 40.89   1st Qu.:0.2030   1st Qu.:  1.764   1st Qu.:  1.837  
##  Median : 51.37   Median :0.2450   Median :  4.590   Median :  3.931  
##  Mean   : 53.42   Mean   :0.2213   Mean   : 24.501   Mean   : 21.196  
##  3rd Qu.: 62.37   3rd Qu.:0.2640   3rd Qu.: 34.724   3rd Qu.: 35.853  
##  Max.   :112.40   Max.   :0.4100   Max.   :153.085   Max.   :106.542  
##        SP          density.corr          density         phi.core    
##  Min.   :-73.95   Min.   :-0.067000   Min.   :1.758   Min.   :15.70  
##  1st Qu.:-42.01   1st Qu.:-0.016000   1st Qu.:2.023   1st Qu.:23.90  
##  Median :-32.25   Median :-0.007000   Median :2.099   Median :27.60  
##  Mean   :-30.98   Mean   :-0.008883   Mean   :2.102   Mean   :26.93  
##  3rd Qu.:-19.48   3rd Qu.: 0.002000   3rd Qu.:2.181   3rd Qu.:30.70  
##  Max.   : 25.13   Max.   : 0.089000   Max.   :2.387   Max.   :36.30  
##      k.core            Facies         
##  Min.   :    0.42   Length:819        
##  1st Qu.:  657.33   Class :character  
##  Median : 1591.22   Mode  :character  
##  Mean   : 2251.91                     
##  3rd Qu.: 3046.82                     
##  Max.   :15600.00

First step is to see if there is a direct relationship between ’Φ.Core” and “Φ.Log”

par(mfrow=c(1,1))
model1 <- lm(data$phi.core ~ data$phi.N)
coef(model1)
## (Intercept)  data$phi.N 
##    30.96232   -18.20696
plot(data$phi.N,data$phi.core, xlab = 'Φ.Log',ylab='Φ.Core (%)')
abline(model1, lwd=2, col='blue' )

summary(model1)
## 
## Call:
## lm(formula = data$phi.core ~ data$phi.N)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -13.5237  -3.0779   0.9432   3.3563  10.4025 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   30.962      0.485  63.846   <2e-16 ***
## data$phi.N   -18.207      2.080  -8.753   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4.368 on 817 degrees of freedom
## Multiple R-squared:  0.08573,    Adjusted R-squared:  0.08462 
## F-statistic: 76.61 on 1 and 817 DF,  p-value: < 2.2e-16
model1 <- lm((data$phi.core/100) ~., data = data)
summary(model1)
## 
## Call:
## lm(formula = (data$phi.core/100) ~ ., data = data)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.099073 -0.008962  0.000796  0.008740  0.090767 
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   1.613e+00  2.577e-01   6.261 6.24e-10 ***
## depth        -3.948e-05  2.686e-05  -1.470 0.142023    
## caliper      -8.627e-02  1.484e-02  -5.812 8.90e-09 ***
## ind.deep      5.081e-05  3.492e-05   1.455 0.146104    
## ind.med      -3.357e-05  3.839e-05  -0.874 0.382160    
## gamma         3.993e-05  9.246e-05   0.432 0.665963    
## phi.N         1.368e-01  2.141e-02   6.392 2.78e-10 ***
## R.deep       -1.528e-04  9.406e-05  -1.624 0.104683    
## R.med         1.954e-04  1.377e-04   1.419 0.156296    
## SP           -4.974e-06  4.686e-05  -0.106 0.915504    
## density.corr -1.546e-01  7.125e-02  -2.170 0.030298 *  
## density      -1.865e-01  1.618e-02 -11.531  < 2e-16 ***
## k.core        4.240e-06  5.037e-07   8.418  < 2e-16 ***
## FaciesF10    -4.419e-02  5.120e-03  -8.631  < 2e-16 ***
## FaciesF2     -7.517e-02  8.238e-03  -9.126  < 2e-16 ***
## FaciesF3     -2.873e-02  4.868e-03  -5.900 5.35e-09 ***
## FaciesF5     -3.388e-02  4.964e-03  -6.824 1.75e-11 ***
## FaciesF7     -5.684e-02  8.290e-03  -6.857 1.41e-11 ***
## FaciesF8     -1.282e-02  5.849e-03  -2.193 0.028630 *  
## FaciesF9     -2.453e-02  6.515e-03  -3.765 0.000179 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.01874 on 799 degrees of freedom
## Multiple R-squared:  0.8354, Adjusted R-squared:  0.8315 
## F-statistic: 213.4 on 19 and 799 DF,  p-value: < 2.2e-16

Now we see that R square and Adjusted R square became 0.8354, 0.8315 respectively which indcate a good relationship,therefore, we have 13 parameters influence in the relationship between ’Φ.Core” and “Φ.Log”. So lets write the multiple linear regression to find “Φ.CoreL”

model1 <- lm((data$phi.core/100) ~caliper+phi.N+density.corr+density+k.core+Facies, data = data)
summary(model1)
## 
## Call:
## lm(formula = (data$phi.core/100) ~ caliper + phi.N + density.corr + 
##     density + k.core + Facies, data = data)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.099953 -0.009649 -0.000134  0.009053  0.090382 
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   1.231e+00  8.952e-02  13.746  < 2e-16 ***
## caliper      -6.540e-02  9.916e-03  -6.595 7.68e-11 ***
## phi.N         1.579e-01  1.770e-02   8.918  < 2e-16 ***
## density.corr -1.667e-01  7.013e-02  -2.376   0.0177 *  
## density      -1.974e-01  1.540e-02 -12.819  < 2e-16 ***
## k.core        3.996e-06  4.363e-07   9.158  < 2e-16 ***
## FaciesF10    -4.517e-02  5.037e-03  -8.967  < 2e-16 ***
## FaciesF2     -7.914e-02  8.051e-03  -9.829  < 2e-16 ***
## FaciesF3     -3.000e-02  4.684e-03  -6.404 2.57e-10 ***
## FaciesF5     -3.794e-02  3.788e-03 -10.018  < 2e-16 ***
## FaciesF7     -6.198e-02  7.222e-03  -8.582  < 2e-16 ***
## FaciesF8     -1.863e-02  3.765e-03  -4.948 9.11e-07 ***
## FaciesF9     -2.693e-02  3.821e-03  -7.047 3.92e-12 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.0189 on 806 degrees of freedom
## Multiple R-squared:  0.8312, Adjusted R-squared:  0.8287 
## F-statistic: 330.7 on 12 and 806 DF,  p-value: < 2.2e-16
par(mfrow=c(2,2))
plot(model1,lwd=3)

Predict and plot the “Φ.CoreL”

Φ.CoreL<-predict(model1,data)
plot(Φ.CoreL * 100,xlab='Number of Samples',ylab='Φ.CoreL')

 #cbind(data$k.core,Φ.CoreL)

Now we have “Φ.CoreL” let’s make relationship between it and K.core by using simple linear regression to find “K.coreL”

model2 <- lm(data$k.core ~ Φ.CoreL)
plot(Φ.CoreL,data$k.core,xlab ='Φ.CoreL',ylab='K.core')
abline(model2, lwd=3, col='red' )

model3 <- lm(data$k.core ~., data = data)
summary(model3)
## 
## Call:
## lm(formula = data$k.core ~ ., data = data)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -5585.6  -568.9    49.2   476.5  8928.4 
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  -6.783e+04  1.760e+04  -3.853 0.000126 ***
## depth         8.544e+00  1.785e+00   4.786 2.02e-06 ***
## caliper       1.413e+03  1.019e+03   1.387 0.165789    
## ind.deep     -2.418e-01  2.354e+00  -0.103 0.918220    
## ind.med       1.224e+00  2.585e+00   0.473 0.636062    
## gamma        -4.583e+01  6.010e+00  -7.626 6.88e-14 ***
## phi.N        -2.010e+03  1.476e+03  -1.362 0.173540    
## R.deep       -2.344e+01  6.288e+00  -3.727 0.000207 ***
## R.med         5.643e+01  9.065e+00   6.225 7.76e-10 ***
## SP           -7.125e+00  3.145e+00  -2.266 0.023736 *  
## density.corr -2.567e+03  4.809e+03  -0.534 0.593602    
## density       2.319e+03  1.173e+03   1.976 0.048458 *  
## phi.core      1.921e+02  2.282e+01   8.418  < 2e-16 ***
## FaciesF10     8.921e+02  3.590e+02   2.485 0.013157 *  
## FaciesF2      9.243e+02  5.818e+02   1.589 0.112514    
## FaciesF3      4.393e+02  3.344e+02   1.313 0.189394    
## FaciesF5      7.411e+02  3.428e+02   2.162 0.030908 *  
## FaciesF7     -4.152e+01  5.742e+02  -0.072 0.942377    
## FaciesF8     -1.179e+03  3.927e+02  -3.002 0.002770 ** 
## FaciesF9     -2.969e+03  4.298e+02  -6.908 1.00e-11 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1262 on 799 degrees of freedom
## Multiple R-squared:  0.6889, Adjusted R-squared:  0.6815 
## F-statistic: 93.12 on 19 and 799 DF,  p-value: < 2.2e-16
model3.red <- lm(data$k.core~Φ.CoreL+depth+gamma+R.deep+R.med+SP+density+phi.core+Facies, data =data)
coef(model3.red)
##   (Intercept)       Φ.CoreL         depth         gamma        R.deep 
## -41763.397880 116464.432647     -5.431412    -77.510493    -16.847085 
##         R.med            SP       density      phi.core     FaciesF10 
##     19.043411     -2.609740  22033.559000     13.194473   5237.387181 
##      FaciesF2      FaciesF3      FaciesF5      FaciesF7      FaciesF8 
##   8244.241790   3419.732335   3647.957858   4752.532284   -775.751582 
##      FaciesF9 
##    876.817847
par(mfrow=c(2,2))
plot(model3.red,lwd=3)

K.coreL <- predict(model3.red,data)
plot(K.coreL,xlab='Number of Samples',ylab='K.coreL (md)')

AdjR.sq2 <- 1-sum((K.coreL - data$k.core)^2)/sum((data$k.core-mean(data$k.core))^2)
AdjR.sq2
## [1] 0.8219384
rmse.model3 <- sqrt(sum((K.coreL - data$k.core)^2)/nrow(data))
rmse.model3
## [1] 942.7917

Add our new data “K.coreL” to the file karpur.csv

karpur2<-cbind(data,K.coreL)
write.csv(karpur2,"karpur2.csv")
head(karpur2)
##    depth caliper ind.deep ind.med  gamma phi.N R.deep  R.med      SP
## 1 5667.0   8.685  618.005 569.781 98.823 0.410  1.618  1.755 -56.587
## 2 5667.5   8.686  497.547 419.494 90.640 0.307  2.010  2.384 -61.916
## 3 5668.0   8.686  384.935 300.155 78.087 0.203  2.598  3.332 -55.861
## 4 5668.5   8.686  278.324 205.224 66.232 0.119  3.593  4.873 -41.860
## 5 5669.0   8.686  183.743 131.155 59.807 0.069  5.442  7.625 -34.934
## 6 5669.5   8.686  109.512  75.633 57.109 0.048  9.131 13.222 -39.769
##   density.corr density phi.core   k.core Facies  K.coreL
## 1       -0.033   2.205  33.9000 2442.590     F1 4757.604
## 2       -0.067   2.040  33.4131 3006.989     F1 4581.700
## 3       -0.064   1.888  33.1000 3370.000     F1 3884.732
## 4       -0.053   1.794  34.9000 2270.000     F1 2621.163
## 5       -0.054   1.758  35.0644 2530.758     F1 2377.844
## 6       -0.058   1.759  35.3152 2928.314     F1 2520.201

Now lts’s plot our final work

par(mfrow=(c(1,5)))
plot(data$phi.core,data$depth,ylim =rev(c(5667,6083)), xlim=c(40,10)
     ,type="l",col="blue", lwd=2, xlab='Φ.Core' ,ylab='depth (m)')
plot(data$phi.N * 100,data$depth,ylim =rev(c(5667,6083)), xlim=c(40,10)
     ,type="l",col="darkred", lwd=2, xlab='Φ.Log' ,ylab='depth (m)')
plot(Φ.CoreL * 100,data$depth,ylim =rev(c(5667,6083)), xlim=c(40,10)
     ,type="l",col="yellow", lwd=2, xlab='Φ.CoreL' ,ylab='depth (m)')
plot(data$k.core,data$depth,ylim =rev(c(5667,6083)), xlim=c(0.42,15600.00) ,type="l",col="red", lwd=2, xlab='K.core (md)' ,ylab='depth (m)')
plot(K.coreL,data$depth,ylim =rev(c(5667,6083)), xlim=c(0.42,15600.00),type="l",col="green", lwd=2, xlab='K.coreL (md)' ,ylab='depth (m)')

par(mfrow=c(1,1))
boxplot(data$depth~data$Facies,col="300" ,xlab='Facies',
        ylab='Depth (m)',cex=1.5, cex.lab=1.5, cex.axis=1.2,col.axis="100",col.lab="darkgreen")
grid(nx= NULL, ny= NULL, lty=3,col="red",lwd=2)