Prepare the data

dat <- fread("Output/wheat_data_prepped.csv")
#fix rotation
dat[!is.na(yldb), yld := yldb]
#drop all blank yields and biomass estimates
dat <- dat[!is.na(yld)]
dat[, c("wind","yldb") := NULL]

# Max yield index ---------------------------------------------------------
dat[, yld_max := max(yld,na.rm = T), by = .(year,local,rotation,rep)]

#keep original yield
dat[, yld.OR := yld]

#calculate control normalised yield
dat[, yld := yld/yld_max*100]

fwrite(dat,"Output/data_final.csv")

Model results

Langgewens

Canola-Wheat

Langgewens Canola-Wheat results, 2018 was excluded due to wind damage.

Yield response to Nitrogen
Year
Relative yield (Max rep yield = 100)
2016 2017 2018 2019
(1) (2) (3) (4)
Total Nitrogen Applied 0.297*** -0.084 0.313*** 0.117
(0.076) (0.098) (0.103) (0.098)
Total Nitrogen Applied squared -0.001*** 0.0002 -0.001*** -0.001
(0.0003) (0.0004) (0.0004) (0.0004)
Intercept 65.924*** 87.723*** 62.413*** 76.679***
(3.843) (4.888) (5.198) (4.547)
Observations 61 62 61 61
R2 0.332 0.062 0.146 0.025
Adjusted R2 0.309 0.030 0.117 -0.009
Residual Std. Error 8.168 (df = 58) 10.850 (df = 59) 11.006 (df = 58) 11.700 (df = 58)
F Statistic 14.427*** (df = 2; 58) 1.933 (df = 2; 59) 4.969** (df = 2; 58) 0.739 (df = 2; 58)
Note: p<0.1; p<0.05; p<0.01

It is evident that only 2016 has a good fit.

grid.arrange(p.seg.2016.Langgewens.CW,p.seg.2018.Langgewens.CW,p.seg.2019.Langgewens.CW, nrow =2)

summary.segmented(m.seg.2016.Langgewens.CW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##               Est. St.Err
## psi1.N_tot 79.203 19.375
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 66.59237    4.46910  14.901  < 2e-16 ***
## N_tot        0.25152    0.09044   2.781  0.00726 ** 
## U1.N_tot    -0.23813    0.09701  -2.455       NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 9.044 on 59 degrees of freedom
## Multiple R-Squared: 0.2931,  Adjusted R-squared: 0.2571 
## 
## Convergence attained in 2 iter. (rel. change 0)
slope(m.seg.2016.Langgewens.CW)
## $N_tot
##            Est.  St.Err. t value CI(95%).l CI(95%).u
## slope1 0.251520 0.090443 2.78100  0.070545  0.432500
## slope2 0.013396 0.035073 0.38195 -0.056785  0.083577
summary.segmented(m.seg.2018.Langgewens.CW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##               Est. St.Err
## psi1.N_tot 50.613  7.465
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  48.4163     7.7892   6.216 5.34e-08 ***
## N_tot         0.7040     0.2237   3.147  0.00257 ** 
## U1.N_tot     -0.7964     0.2262  -3.521       NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 11.18 on 60 degrees of freedom
## Multiple R-Squared: 0.2465,  Adjusted R-squared: 0.2088 
## 
## Convergence attained in 2 iter. (rel. change 0)
slope(m.seg.2018.Langgewens.CW)
## $N_tot
##             Est.  St.Err. t value CI(95%).l CI(95%).u
## slope1  0.704050 0.223690  3.1474   0.25660  1.151500
## slope2 -0.092338 0.033556 -2.7518  -0.15946 -0.025217
summary.segmented(m.seg.2019.Langgewens.CW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##             Est. St.Err
## psi1.N_tot   75 28.091
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  72.5325     4.9404  14.682   <2e-16 ***
## N_tot         0.1718     0.1184   1.452    0.152    
## U1.N_tot     -0.2378     0.1283  -1.854       NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 13.18 on 60 degrees of freedom
## Multiple R-Squared: 0.06892,  Adjusted R-squared: 0.02237 
## 
## Convergence attained in 1 iter. (rel. change 2.2691e-09)
slope(m.seg.2019.Langgewens.CW)
## $N_tot
##             Est.  St.Err. t value CI(95%).l CI(95%).u
## slope1  0.171840 0.118380  1.4516 -0.064956  0.408640
## slope2 -0.065937 0.049347 -1.3362 -0.164650  0.032772

Medics-Wheat

Langgewens Medics-Wheat results, 2018 was excluded due to wind damage.

Yield response to Nitrogen
Year
Relative yield (Max rep yield = 100)
2016 2017 2018 2019
(1) (2) (3) (4)
Total Nitrogen Applied 0.216*** -0.092 -0.169* -0.238**
(0.081) (0.115) (0.098) (0.108)
Total Nitrogen Applied squared -0.001*** 0.0004 0.0004 0.001**
(0.0003) (0.0005) (0.0004) (0.001)
Intercept 77.308*** 82.239*** 91.842*** 89.795***
(4.134) (5.787) (4.696) (4.868)
Observations 60 60 61 61
R2 0.119 0.011 0.155 0.077
Adjusted R2 0.088 -0.023 0.126 0.045
Residual Std. Error 8.305 (df = 57) 12.187 (df = 57) 10.753 (df = 58) 13.374 (df = 58)
F Statistic 3.835** (df = 2; 57) 0.328 (df = 2; 57) 5.315*** (df = 2; 58) 2.427* (df = 2; 58)
Note: p<0.1; p<0.05; p<0.01

It is evident that only 2016 has a good fit.

p.seg.2016.Langgewens.MW

summary.segmented(m.seg.2016.Langgewens.MW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##               Est. St.Err
## psi1.N_tot 79.405 16.371
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 73.93784    4.72547  15.647   <2e-16 ***
## N_tot        0.22592    0.09563   2.362   0.0214 *  
## U1.N_tot    -0.29851    0.10248  -2.913       NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 9.563 on 60 degrees of freedom
## Multiple R-Squared: 0.1495,  Adjusted R-squared: 0.107 
## 
## Convergence attained in 2 iter. (rel. change 0)
slope(m.seg.2016.Langgewens.MW)
## $N_tot
##             Est.  St.Err. t value CI(95%).l CI(95%).u
## slope1  0.225920 0.095632  2.3624   0.03463 0.4172100
## slope2 -0.072583 0.036847 -1.9699  -0.14629 0.0011216

Darling

Canola-Wheat

Darling Canola-Wheat results

Yield response to Nitrogen
Year
Relative yield (Max rep yield = 100)
2016 2017 2018
(1) (2) (3)
Total Nitrogen Applied 0.652*** -0.118 0.298***
(0.156) (0.135) (0.094)
Total Nitrogen Applied squared -0.002*** -0.0002 -0.001**
(0.001) (0.001) (0.0004)
Intercept 22.862*** 89.759*** 65.750***
(7.699) (6.561) (4.793)
Observations 62 59 61
R2 0.418 0.327 0.198
Adjusted R2 0.399 0.303 0.170
Residual Std. Error 17.671 (df = 59) 14.335 (df = 56) 10.068 (df = 58)
F Statistic 21.228*** (df = 2; 59) 13.591*** (df = 2; 56) 7.163*** (df = 2; 58)
Note: p<0.1; p<0.05; p<0.01

It is evident that only 2016 has a good fit.

p.seg.2018.Darling.CW

summary.segmented(m.seg.2018.Darling.CW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##                Est. St.Err
## psi1.N_tot 120.001 28.696
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 69.45336    4.70693  14.756   <2e-16 ***
## N_tot        0.15778    0.07362   2.143   0.0362 *  
## U1.N_tot    -0.21272    0.09584  -2.220       NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 11.64 on 60 degrees of freedom
## Multiple R-Squared: 0.1648,  Adjusted R-squared: 0.1231 
## 
## Convergence attained in 1 iter. (rel. change 6.7242e-07)
slope(m.seg.2018.Darling.CW)
## $N_tot
##             Est.  St.Err.  t value CI(95%).l CI(95%).u
## slope1  0.157780 0.073622  2.14310  0.010513  0.305050
## slope2 -0.054945 0.061352 -0.89557 -0.177670  0.067777

Medics-Wheat

Darling Medics-Wheat results

Yield response to Nitrogen
Year
Relative yield (Max rep yield = 100)
2016 2017
(1) (2)
Total Nitrogen Applied 0.702*** -0.107
(0.101) (0.185)
Total Nitrogen Applied squared -0.002*** 0.0005
(0.0004) (0.001)
Intercept 26.950*** 68.693***
(5.046) (9.348)
Observations 63 58
R2 0.706 0.006
Adjusted R2 0.696 -0.030
Residual Std. Error 11.245 (df = 60) 18.601 (df = 55)
F Statistic 72.002*** (df = 2; 60) 0.174 (df = 2; 55)
Note: p<0.1; p<0.05; p<0.01

It is evident that only 2016 has a good fit.

p.seg.2016.Darling.MW

summary.segmented(m.seg.2016.Darling.MW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##               Est. St.Err
## psi1.N_tot 74.838  9.258
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  21.1046     5.5718   3.788 0.000354 ***
## N_tot         0.7274     0.1128   6.451 2.15e-08 ***
## U1.N_tot     -0.5989     0.1208  -4.956       NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 11.28 on 60 degrees of freedom
## Multiple R-Squared: 0.736,  Adjusted R-squared: 0.7228 
## 
## Convergence attained in 2 iter. (rel. change 0)
slope(m.seg.2016.Darling.MW)
## $N_tot
##           Est.  St.Err. t value CI(95%).l CI(95%).u
## slope1 0.72736 0.112760  6.4505   0.50181   0.95291
## slope2 0.12846 0.043446  2.9566   0.04155   0.21536

Porterville

Canola-Wheat

Porterville Canola-Wheat results

Yield response to Nitrogen
Year
Relative yield (Max rep yield = 100)
2016 2017 2018 2019
(1) (2) (3) (4)
Total Nitrogen Applied 0.599*** -0.145 0.373*** 0.268**
(0.202) (0.159) (0.075) (0.114)
Total Nitrogen Applied squared -0.002* 0.0004 -0.001*** -0.001
(0.001) (0.001) (0.0003) (0.001)
Intercept 16.172 75.633*** 53.334*** 61.358***
(9.738) (7.810) (3.774) (5.168)
Observations 61 63 60 62
R2 0.321 0.042 0.659 0.185
Adjusted R2 0.297 0.010 0.647 0.157
Residual Std. Error 22.298 (df = 58) 18.085 (df = 60) 8.261 (df = 57) 14.214 (df = 59)
F Statistic 13.699*** (df = 2; 58) 1.324 (df = 2; 60) 55.053*** (df = 2; 57) 6.687*** (df = 2; 59)
Note: p<0.1; p<0.05; p<0.01

It is evident that only 2016 has a good fit.

grid.arrange(p.seg.2016.Porterville.CW, p.seg.2018.Porterville.CW,p.seg.2019.Porterville.CW, nrow =2)
## Warning: Removed 4 rows containing missing values (geom_point).
## Warning: Removed 8 rows containing missing values (geom_point).
## Warning: Removed 3 rows containing missing values (geom_point).

summary.segmented(m.seg.2016.Porterville.CW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##                Est. St.Err
## psi1.N_tot 148.883 18.363
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)   
## (Intercept)  21.8759     8.3233   2.628  0.01088 * 
## N_tot         0.3670     0.1061   3.458  0.00101 **
## U1.N_tot     -0.6569     0.2245  -2.927       NA   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 23.73 on 60 degrees of freedom
## Multiple R-Squared: 0.2914,  Adjusted R-squared: 0.256 
## 
## Convergence attained in 2 iter. (rel. change 0)
slope(m.seg.2016.Porterville.CW)
## $N_tot
##            Est. St.Err. t value CI(95%).l CI(95%).u
## slope1  0.36698 0.10614  3.4576   0.15468   0.57928
## slope2 -0.28996 0.19777 -1.4661  -0.68556   0.10564
summary.segmented(m.seg.2018.Porterville.CW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##               Est. St.Err
## psi1.N_tot 47.841 10.612
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  46.0989     6.8541   6.726 7.33e-09 ***
## N_tot         0.5884     0.1968   2.989  0.00405 ** 
## U1.N_tot     -0.4635     0.1990  -2.329       NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 9.842 on 60 degrees of freedom
## Multiple R-Squared: 0.5636,  Adjusted R-squared: 0.5418 
## 
## Convergence attained in 2 iter. (rel. change 0)
slope(m.seg.2018.Porterville.CW)
## $N_tot
##           Est.  St.Err. t value CI(95%).l CI(95%).u
## slope1 0.58842 0.196840  2.9893  0.194680   0.98216
## slope2 0.12487 0.029527  4.2291  0.065809   0.18394
summary.segmented(m.seg.2019.Porterville.CW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##               Est. St.Err
## psi1.N_tot 90.772 23.417
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  56.6834     5.3683  10.559 2.62e-15 ***
## N_tot         0.2964     0.1120   2.646   0.0104 *  
## U1.N_tot     -0.3308     0.1299  -2.547       NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 14.98 on 60 degrees of freedom
## Multiple R-Squared: 0.2393,  Adjusted R-squared: 0.2013 
## 
## Convergence attained in 2 iter. (rel. change 0)
slope(m.seg.2019.Porterville.CW)
## $N_tot
##             Est.  St.Err.  t value CI(95%).l CI(95%).u
## slope1  0.296390 0.112020  2.64580  0.072314  0.520470
## slope2 -0.034385 0.065699 -0.52338 -0.165800  0.097033

Medics-Wheat

Porterville Medics-Wheat results

Yield response to Nitrogen
Year
Relative yield (Max rep yield = 100)
2016 2017 2018
(1) (2) (3)
Total Nitrogen Applied 0.304*** -0.276* -0.116
(0.087) (0.151) (0.107)
Total Nitrogen Applied squared -0.001*** 0.001 0.0004
(0.0004) (0.001) (0.0004)
Intercept 63.944*** 88.406*** 90.273***
(4.300) (7.682) (5.514)
Observations 60 62 61
R2 0.239 0.088 0.021
Adjusted R2 0.213 0.057 -0.013
Residual Std. Error 9.493 (df = 57) 16.335 (df = 59) 11.129 (df = 58)
F Statistic 8.961*** (df = 2; 57) 2.855* (df = 2; 59) 0.613 (df = 2; 58)
Note: p<0.1; p<0.05; p<0.01

It is evident that only 2016 has a good fit.

p.seg.2016.Porterville.MW
## Warning: Removed 6 rows containing missing values (geom_point).

summary.segmented(m.seg.2016.Porterville.MW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##             Est. St.Err
## psi1.N_tot  150 19.447
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 70.47646    3.85718  18.272   <2e-16 ***
## N_tot        0.11745    0.04918   2.388   0.0201 *  
## U1.N_tot    -0.28679    0.10401  -2.757       NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 11 on 60 degrees of freedom
## Multiple R-Squared:  0.16,  Adjusted R-squared: 0.118 
## 
## Convergence attained in 1 iter. (rel. change 1.2057e-07)
slope(m.seg.2016.Porterville.MW)
## $N_tot
##            Est.  St.Err. t value CI(95%).l CI(95%).u
## slope1  0.11745 0.049185  2.3880  0.019067  0.215840
## slope2 -0.16934 0.091651 -1.8477 -0.352670  0.013989

Caledon

Not one of the models has a good fit, there is no response to fertiliser.

Yield response to Nitrogen
Year
Relative yield (Max rep yield = 100)
2016 2017 2018
(1) (2) (3)
Total Nitrogen Applied 0.111 0.039 -0.030
(0.113) (0.087) (0.104)
Total Nitrogen Applied squared -0.0004 -0.0001 0.00005
(0.0005) (0.0004) (0.0004)
Intercept 72.883*** 81.544*** 79.684***
(5.661) (4.335) (5.439)
Observations 60 59 59
R2 0.017 0.016 0.012
Adjusted R2 -0.018 -0.019 -0.024
Residual Std. Error 11.923 (df = 57) 9.070 (df = 56) 10.301 (df = 56)
F Statistic 0.489 (df = 2; 57) 0.452 (df = 2; 56) 0.329 (df = 2; 56)
Note: p<0.1; p<0.05; p<0.01

Tygerhoek

All years show a good fit except for 2017

Yield response to Nitrogen
Year
Relative yield (Max rep yield = 100)
2016 2017 2018 2019
(1) (2) (3) (4)
Total Nitrogen Applied 0.492*** 0.021 0.530*** 0.285***
(0.095) (0.068) (0.098) (0.104)
Total Nitrogen Applied squared -0.002*** 0.00003 -0.002*** -0.001**
(0.0004) (0.0003) (0.0004) (0.0005)
Intercept 50.672*** 84.986*** 52.171*** 71.580***
(4.807) (3.423) (4.782) (4.682)
Observations 61 60 59 59
R2 0.491 0.055 0.387 0.125
Adjusted R2 0.474 0.022 0.365 0.094
Residual Std. Error 10.177 (df = 58) 7.221 (df = 57) 10.488 (df = 56) 11.876 (df = 56)
F Statistic 27.986*** (df = 2; 58) 1.650 (df = 2; 57) 17.688*** (df = 2; 56) 4.016** (df = 2; 56)
Note: p<0.1; p<0.05; p<0.01

grid.arrange(p.seg.2016.Tygerhoek.CW, p.seg.2018.Tygerhoek.CW,p.seg.2019.Tygerhoek.CW, nrow =2)

summary.segmented(m.seg.2016.Tygerhoek.CW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##               Est. St.Err
## psi1.N_tot 50.648  7.837
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  36.6240     8.3941   4.363 5.13e-05 ***
## N_tot         0.8684     0.2411   3.602 0.000641 ***
## U1.N_tot     -0.8181     0.2438  -3.356       NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 12.05 on 60 degrees of freedom
## Multiple R-Squared: 0.4463,  Adjusted R-squared: 0.4186 
## 
## Convergence attained in 2 iter. (rel. change 0)
slope(m.seg.2016.Tygerhoek.CW)
## $N_tot
##            Est.  St.Err. t value CI(95%).l CI(95%).u
## slope1 0.868380 0.241060  3.6023  0.386180    1.3506
## slope2 0.050267 0.036161  1.3901 -0.022067    0.1226
summary.segmented(m.seg.2018.Tygerhoek.CW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##               Est. St.Err
## psi1.N_tot 52.116  5.722
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  33.4139     7.2908   4.583 2.43e-05 ***
## N_tot         0.9948     0.2094   4.751 1.34e-05 ***
## U1.N_tot     -1.0162     0.2118  -4.797       NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 10.47 on 59 degrees of freedom
## Multiple R-Squared: 0.4912,  Adjusted R-squared: 0.4653 
## 
## Convergence attained in 2 iter. (rel. change 2.813e-16)
slope(m.seg.2018.Tygerhoek.CW)
## $N_tot
##             Est.  St.Err.  t value CI(95%).l CI(95%).u
## slope1  0.994780 0.209380  4.75110  0.575820  1.413800
## slope2 -0.021436 0.032088 -0.66804 -0.085643  0.042771
summary.segmented(m.seg.2019.Tygerhoek.CW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##               Est. St.Err
## psi1.N_tot 86.615 17.731
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  68.6425     5.0592  13.568   <2e-16 ***
## N_tot         0.2733     0.1056   2.589   0.0121 *  
## U1.N_tot     -0.4017     0.1224  -3.283       NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 14.12 on 60 degrees of freedom
## Multiple R-Squared: 0.1746,  Adjusted R-squared: 0.1333 
## 
## Convergence attained in 2 iter. (rel. change 1.5208e-16)
slope(m.seg.2019.Tygerhoek.CW)
## $N_tot
##            Est.  St.Err. t value CI(95%).l  CI(95%).u
## slope1  0.27333 0.105570  2.5890  0.062153  0.4845100
## slope2 -0.12842 0.061916 -2.0741 -0.252270 -0.0045672

Riversdale

Yield response to Nitrogen
Year
Relative yield (Max rep yield = 100)
2016 2017 2018 2019
(1) (2) (3) (4)
Total Nitrogen Applied 0.278*** 0.285* -0.138 0.064
(0.087) (0.153) (0.288) (0.131)
Total Nitrogen Applied squared -0.001* -0.001* 0.001 -0.0004
(0.0004) (0.001) (0.001) (0.001)
Intercept 59.735*** 67.827*** 68.709*** 78.166***
(4.324) (8.022) (14.655) (5.875)
Observations 54 46 47 44
R2 0.563 0.078 0.061 0.019
Adjusted R2 0.546 0.035 0.018 -0.029
Residual Std. Error 6.943 (df = 51) 12.048 (df = 43) 23.903 (df = 44) 14.449 (df = 41)
F Statistic 32.862*** (df = 2; 51) 1.817 (df = 2; 43) 1.419 (df = 2; 44) 0.396 (df = 2; 41)
Note: p<0.1; p<0.05; p<0.01
## Warning: Removed 6 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_vline).
## Warning: Removed 1 rows containing missing values (geom_text).
## Warning: Removed 6 rows containing missing values (geom_point).
## Warning: Removed 5 rows containing missing values (geom_point).
## Warning: Removed 2 rows containing missing values (geom_point).

p.seg.2017.Riversdale.CW
## Warning: Removed 6 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_text).

summary.segmented(m.seg.2017.Riversdale.CW)
## 
##  ***Regression Model with Segmented Relationship(s)***
## 
## Call: 
## segmented.lm(obj = model, seg.Z = ~N_tot)
## 
## Estimated Break-Point(s):
##             Est. St.Err
## psi1.N_tot  120 39.261
## 
## Meaningful coefficients of the linear terms:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  73.2131     7.4669   9.805 1.22e-12 ***
## N_tot         0.1071     0.1131   0.947    0.349    
## U1.N_tot     -0.2139     0.1382  -1.547       NA    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 13.06 on 44 degrees of freedom
## Multiple R-Squared: 0.06081,  Adjusted R-squared: -0.003226 
## 
## Convergence attained in 1 iter. (rel. change 1.7283e-06)
slope(m.seg.2017.Riversdale.CW)
## $N_tot
##            Est.  St.Err.  t value CI(95%).l CI(95%).u
## slope1  0.10711 0.113100  0.94697  -0.12084  0.335050
## slope2 -0.10681 0.079482 -1.34390  -0.26700  0.053373