`vignettes/vignettesSite/ParameterEstimation_HTP.Rmd`

`ParameterEstimation_HTP.Rmd`

This document presents the final step of the HTP data analysis: extracting interesting parameters from the modeled time courses (Brien et al. 2020). For example, in the second data set from the PhenoArch platform, the maximum leaf area (from the P-splines) or the maximum leaf growth rate (from the first derivatives) are relevant parameters (see figure below). We could assess their variability in the genotypes and the difference between treatments, *e.g.* has the water scenario decreased the maximum leaf area?

It is also possible to specify a period for the parameter estimation. For example, in the first data set from the Phenovator platform, we can select the period with the high light intensity (see figure below) and estimate the maximum slope during that period (from the first derivatives). This could be interpreted as a recovery rate of the photosystem II efficiency.

These parameters could then be further analyzed, for example in a GxE analysis (see *statgenGxE*), or a genetic analysis (see *statgenGWAS*).

The functions described in this tutorial can be applied to corrected data, genotypic means (BLUEs or BLUPS) (see **statgenHTP tutorial: 3. Correction for spatial trends**) or on raw data. It allows estimating maximum, minimum, mean, area under the curve (auc) or percentile using predicted values, first or second derivative, during a given period or for the whole time course.

We will use the `fit.splineNumOut`

previously created (see **statgenHTP tutorial: 4. Outlier detection for series of observations**). It contains the P-spline prediction on a subset of plants without the time course outliers. We will estimate the area under the curve of the trait:

```
subGenoVator <- c("G070", "G160", "G151", "G179", "G175", "G004", "G055")
paramVator1 <-
estimateSplineParameters(HTPSpline = fit.splineNumOut,
estimate = "predictions",
what = "AUC",
timeMin = 330,
timeMax = 432,
genotypes = subGenoVator)
plot(paramVator1, plotType = "box")
```

For this subset of genotypes, there is a variability in AUC of the psII efficiency. This could be used in genetic analysis and maybe to perform a GWAS.

Another example is using the derivative during the recovery period (at the end of the time course, so after the light change) to get the maximum slope, or the maximum rate of the psII per time unit during this period.

```
paramVator2 <-
estimateSplineParameters(HTPSpline = fit.splineNumOut,
estimate = "derivatives",
what = "max",
timeMin = 210,
timeMax = 312,
genotypes = subGenoVator)
plot(paramVator2, plotType = "box")
```

Note: when “min” or “max” is selected, the output also contains the parameter occurence time point, as numerical

`timeNumber`

and date`timePoint`

. See in the table below:

genotype | plotId | max_derivatives | max_timeNumber | max_timePoint |
---|---|---|---|---|

G004 | c11r55 | 0.0067723 | 227.7778 | 2018-06-10 04:23:40 |

G004 | c13r20 | 0.0084969 | 226.0000 | 2018-06-10 02:37:00 |

G004 | c19r15 | 0.0073180 | 232.0000 | 2018-06-10 08:37:00 |

G004 | c21r45 | 0.0091551 | 223.3333 | 2018-06-09 23:57:00 |

G004 | c24r48 | 0.0080869 | 224.2222 | 2018-06-10 00:50:20 |

G004 | c2r15 | 0.0079296 | 226.0000 | 2018-06-10 02:37:00 |

For this example, we will use the genotypic prediction (BLUPs, see **statgenHTP tutorial: 3. Correction for spatial trends**) available in the `spatPredArch`

data set. We will fit P-splines at the genotypic level using the `geno.decomp`

levels defined in the spatial model.

```
data(spatPredArch)
fit.splineGenoArch <- fitSpline(inDat = spatPredArch,
trait = "predicted.values",
knots = 15,
minNoTP = 18)
plot(fit.splineGenoArch,
genotypes = "GenoA36")
```

We can estimate the maximum value of the leaf area from the predicted P-splines:

```
paramArch1 <-
estimateSplineParameters(HTPSpline = fit.splineGenoArch,
estimate = "predictions",
what = "max")
```

`plot(paramArch1, plotType = "hist")`

## Example 3

For this example, we will use the raw data from the RootPhAir, corrected for individually outlying observations (see **statgenHTP tutorial: 2. Outlier detection for single observations**) and time course outliers (see **statgenHTP tutorial: 4. Outlier detection Time course**). We will fit P-splines at the plant level on a subset of genotypes.

```
subGenoRoot <- c( "2","6","8","9","10","520","522")
fit.splineRootOut <- fitSpline(inDat = noCorrectedRootOut,
trait = "tipPos_y",
knots = 10,
genotypes = subGenoRoot,
minNoTP = 0,
useTimeNumber = TRUE,
timeNumber = "thermalTime")
```

We will then estimate the mean growth rate using `what = "mean"`

for the subset of genotypes:

```
paramRoot1 <-
estimateSplineParameters(HTPSpline = fit.splineRootOut,
estimate = "derivatives",
what = "mean")
plot(paramRoot1, plotType = "box")
```

Brien, Chris, Nathaniel Jewell, Stephanie J. Watts-Williams, Trevor Garnett, and Bettina Berger. 2020. “Smoothing and Extraction of Traits in the Growth Analysis of Noninvasive Phenotypic Data.” *Plant Methods* 16 (1): 36. https://doi.org/10.1186/s13007-020-00577-6.