{
  "_id": "6a1170a3acfb0bcc41cf6d65",
  "Package": "pep725",
  "Title": "Pan-European Phenological Data Analysis",
  "Version": "1.1.0",
  "Authors@R": "c(person(\"Matthias\", \"Templ\", , \"matthias.templ@gmail.com\", role = c(\"aut\", \"cre\"),\ncomment = c(ORCID = \"0000-0002-8638-5276\")),\nperson(\"Barbara\", \"Templ\", , \"barbara.a.templ@gmail.com\", role = c(\"aut\"),\ncomment = c(ORCID = \"0000-0002-9391-5888\"))\n)",
  "Description": "Provides a framework for quality-aware analysis of\nground-based phenological data from the PEP725 Pan-European\nPhenology Database (Templ et al. (2018)\n<doi:10.1007/s00484-018-1512-8>; Templ et al. (2026)\n<doi:10.1111/nph.70869>) and similar observation networks.\nImplements station-level data quality grading, outlier\ndetection, phenological normals (climate baselines), anomaly\ndetection, elevation and latitude gradient estimation with\nrobust regression, spatial synchrony quantification, partial\nleast squares (PLS) regression for identifying\ntemperature-sensitive periods, and sequential Mann-Kendall\ntrend analysis. Supports data import from PEP725 files,\nconversion of user-supplied data, and downloadable synthetic\ndatasets for teaching without barriers of registration. All\nanalysis outputs provide 'print', 'summary', and 'plot'\nmethods. Interactive spatial visualization is available via\n'leaflet'.",
  "License": "GPL-3",
  "Encoding": "UTF-8",
  "LazyData": "true",
  "Config/testthat/edition": "3",
  "VignetteBuilder": "knitr",
  "Roxygen": "list(markdown = TRUE)",
  "RoxygenNote": "7.3.3",
  "BugReports": "https://github.com/matthias-da/pep725/issues",
  "URL": "https://github.com/matthias-da/pep725",
  "Config/pak/sysreqs": "libabsl-dev cmake libgdal-dev gdal-bin libgeos-dev\nlibicu-dev libssl-dev libproj-dev libsqlite3-dev\nlibudunits2-dev",
  "Repository": "https://matthias-da.r-universe.dev",
  "Date/Publication": "2026-04-23 11:56:50 UTC",
  "RemoteUrl": "https://github.com/matthias-da/pep725",
  "RemoteRef": "HEAD",
  "RemoteSha": "c1b354a2dc3c79c18ea58dd786cedac3628236c1",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-05-23 09:11:56 UTC",
    "User": "root"
  },
  "Author": "Matthias Templ [aut, cre] (ORCID:\n<https://orcid.org/0000-0002-8638-5276>),\nBarbara Templ [aut] (ORCID: <https://orcid.org/0000-0002-9391-5888>)",
  "Maintainer": "Matthias Templ <matthias.templ@gmail.com>",
  "MD5sum": "62f3b86bf14c79dad121ea5fa2931c49",
  "_user": "matthias-da",
  "_type": "src",
  "_file": "pep725_1.1.0.tar.gz",
  "_fileid": "7b8d4ab9a755d9759a90febc351621b61e27f4e1674443745bed3a5ade9bbccf",
  "_filesize": 6849811,
  "_sha256": "7b8d4ab9a755d9759a90febc351621b61e27f4e1674443745bed3a5ade9bbccf",
  "_created": "2026-05-23T09:11:56.000Z",
  "_published": "2026-05-23T09:17:23.305Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 77511610042,
      "time": 203,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7175887642"
    },
    {
      "job": 77511610055,
      "time": 209,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7175888148"
    },
    {
      "job": 77511610049,
      "time": 218,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7175889966"
    },
    {
      "job": 77511610047,
      "time": 146,
      "config": "macos-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7175881694"
    },
    {
      "job": 77511235375,
      "time": 454,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7175869251"
    },
    {
      "job": 77511610044,
      "time": 142,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7175882274"
    },
    {
      "job": 77511610057,
      "time": 141,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7175882207"
    },
    {
      "job": 77511610056,
      "time": 178,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7175885298"
    },
    {
      "job": 77511610052,
      "time": 175,
      "config": "windows-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7175885087"
    }
  ],
  "_buildurl": "https://github.com/r-universe/matthias-da/actions/runs/26328815376",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/matthias-da/pep725",
  "_commit": {
    "id": "c1b354a2dc3c79c18ea58dd786cedac3628236c1",
    "author": "Matthias Templ <matthias.templ@gmail.com>",
    "committer": "Matthias Templ <matthias.templ@gmail.com>",
    "message": "Merge feature/mahalanobis-vignette-and-plot for v1.1.0 release\n\nBug fixes (Mahalanobis plot methods):\n  - threshold attribute stored post-fit\n  - type = 'diagnostic' uses MD-specific panels for Mahalanobis\n\nNew paper-ready visualisation:\n  - type = 'profile' parallel-coordinates phase plot\n\nVignette updates:\n  - data-quality.Rmd documents gam_residual and mahalanobis methods\n  - static PNGs embedded for the three new plot outputs\n\nRelease prep:\n  - Version 1.1.0 (dropped .9000), NEWS.md finalised\n  - URL and globalVariables notes resolved\n  - cran-comments.md rewritten for the 1.1.0 submission\n",
    "time": 1776945410
  },
  "_maintainer": {
    "name": "Matthias Templ",
    "email": "matthias.templ@gmail.com",
    "login": "matthias-da",
    "description": "Matthias Templ is a Professor at the University of Applied Sciences Northwestern Switzerland. \nInterest: imputation, anonymization",
    "uuid": 5263685,
    "orcid": "0000-0002-8638-5276"
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.1",
      "role": "Depends"
    },
    {
      "package": "data.table",
      "role": "Depends"
    },
    {
      "package": "ggplot2",
      "role": "Depends"
    },
    {
      "package": "dplyr",
      "role": "Imports"
    },
    {
      "package": "mgcv",
      "role": "Imports"
    },
    {
      "package": "methods",
      "role": "Imports"
    },
    {
      "package": "patchwork",
      "role": "Imports"
    },
    {
      "package": "purrr",
      "role": "Imports"
    },
    {
      "package": "robustbase",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "tibble",
      "role": "Imports"
    },
    {
      "package": "tidyr",
      "role": "Imports"
    },
    {
      "package": "tidyselect",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "rnaturalearth",
      "role": "Imports"
    },
    {
      "package": "sf",
      "role": "Imports"
    },
    {
      "package": "ggmap",
      "role": "Suggests"
    },
    {
      "package": "Kendall",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "leaflet",
      "role": "Suggests"
    },
    {
      "package": "miniUI",
      "role": "Suggests"
    },
    {
      "package": "nlme",
      "role": "Suggests"
    },
    {
      "package": "quantreg",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "rnaturalearthdata",
      "role": "Suggests"
    },
    {
      "package": "pls",
      "role": "Suggests"
    },
    {
      "package": "shiny",
      "role": "Suggests"
    },
    {
      "package": "sp",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    }
  ],
  "_owner": "matthias-da",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-04",
      "n": 3
    },
    {
      "week": "2026-05",
      "n": 12
    },
    {
      "week": "2026-06",
      "n": 10
    },
    {
      "week": "2026-07",
      "n": 56
    },
    {
      "week": "2026-08",
      "n": 1
    },
    {
      "week": "2026-09",
      "n": 13
    },
    {
      "week": "2026-12",
      "n": 1
    },
    {
      "week": "2026-17",
      "n": 12
    }
  ],
  "_tags": [
    {
      "name": "v1.0.0",
      "date": "2026-02-26"
    },
    {
      "name": "v1.1.0",
      "date": "2026-04-23"
    }
  ],
  "_stars": 2,
  "_contributors": [
    {
      "user": "matthias-da",
      "count": 116,
      "uuid": 5263685
    },
    {
      "user": "barbaratempl",
      "count": 15,
      "uuid": 56026133
    }
  ],
  "_userbio": {
    "uuid": 5263685,
    "type": "user",
    "name": "Matthias Templ",
    "description": "Matthias Templ is a Professor at the University of Applied Sciences Northwestern Switzerland. \r\nInterest: imputation, anonymization"
  },
  "_downloads": {
    "count": 488,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/pep725"
  },
  "_devurl": "https://github.com/matthias-da/pep725",
  "_searchresults": 10,
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/pep725.html",
    "extra/readme.html",
    "extra/readme.md",
    "manual.pdf"
  ],
  "_homeurl": "https://github.com/matthias-da/pep725",
  "_realowner": "matthias-da",
  "_cranurl": true,
  "_releases": [
    {
      "version": "1.0.0",
      "date": "2026-03-09"
    },
    {
      "version": "1.0.2",
      "date": "2026-03-31"
    },
    {
      "version": "1.1.0",
      "date": "2026-04-24"
    }
  ],
  "_exports": [
    "add_country",
    "add_daylength",
    "as.pep",
    "bbch_description",
    "calc_daylength",
    "calc_max_daylength",
    "calc_thermal_sum",
    "calc_thermal_units",
    "get_phenology_doys",
    "is.pep",
    "kendall_tau",
    "mann_kendall_z",
    "new_pep",
    "pep_cache_clear",
    "pep_cache_info",
    "pep_check_connectivity",
    "pep_check_phases",
    "pep_check_phases_multi",
    "pep_completeness",
    "pep_coverage",
    "pep_download",
    "pep_flag_outliers",
    "pep_import",
    "pep_outliers_leaflet",
    "pep_plot_outliers",
    "pep_quality",
    "pep_second_events",
    "pep_simulate",
    "pep725_demo",
    "pheno_anomaly",
    "pheno_combine",
    "pheno_gradient",
    "pheno_leaflet",
    "pheno_map",
    "pheno_normals",
    "pheno_plot",
    "pheno_plot_hh",
    "pheno_plot_timeseries",
    "pheno_pls",
    "pheno_regional",
    "pheno_regional_hh",
    "pheno_synchrony",
    "pheno_trend_turning",
    "plot_phenology_trends",
    "select_phase",
    "subspecies_report",
    "summarize_subspecies_availability"
  ],
  "_datasets": [
    {
      "name": "pep_seed",
      "title": "Minimal Seed Dataset for Synthetic Data Generation",
      "object": "pep_seed",
      "class": [
        "data.table",
        "data.frame"
      ],
      "fields": [
        "s_id",
        "lon",
        "lat",
        "alt",
        "genus",
        "species",
        "phase_id",
        "year",
        "day",
        "country"
      ],
      "rows": 1319,
      "table": true,
      "tojson": true
    }
  ],
  "_help": [
    {
      "page": "sub-.pep",
      "title": "Subset PEP725 Data While Preserving Class",
      "topics": [
        "[.pep"
      ]
    },
    {
      "page": "add_country",
      "title": "Add Country Information to a Dataset Based on Latitude/Longitude",
      "topics": [
        "add_country"
      ]
    },
    {
      "page": "add_daylength",
      "title": "Add Daylength to Phenological Data",
      "topics": [
        "add_daylength"
      ]
    },
    {
      "page": "as.pep",
      "title": "Coerce to PEP725 Data Object",
      "topics": [
        "as.pep"
      ]
    },
    {
      "page": "bbch_description",
      "title": "Get BBCH Phase Description",
      "topics": [
        "bbch_description"
      ]
    },
    {
      "page": "calc_daylength",
      "title": "Calculate Daylength (Photoperiod)",
      "topics": [
        "calc_daylength"
      ]
    },
    {
      "page": "calc_max_daylength",
      "title": "Maximum Daylength at a Latitude",
      "topics": [
        "calc_max_daylength"
      ]
    },
    {
      "page": "calc_thermal_sum",
      "title": "Calculate Thermal Sum at Phenological Events",
      "topics": [
        "calc_thermal_sum"
      ]
    },
    {
      "page": "calc_thermal_units",
      "title": "Calculate Thermal Units (Growing Degree Days)",
      "topics": [
        "calc_thermal_units"
      ]
    },
    {
      "page": "get_phenology_doys",
      "title": "Compute CTRL and SCEN Phenology Day-of-Year Values",
      "topics": [
        "get_phenology_doys"
      ]
    },
    {
      "page": "is.pep",
      "title": "Test if Object is a PEP725 Data Object",
      "topics": [
        "is.pep"
      ]
    },
    {
      "page": "kendall_tau",
      "title": "Mann-Kendall Z-Statistic (deprecated alias for 'mann_kendall_z')",
      "topics": [
        "kendall_tau"
      ]
    },
    {
      "page": "mann_kendall_z",
      "title": "Mann-Kendall Z-Statistic",
      "topics": [
        "mann_kendall_z"
      ]
    },
    {
      "page": "new_pep",
      "title": "Create a PEP725 Phenological Data Object",
      "topics": [
        "new_pep"
      ]
    },
    {
      "page": "pep_cache_clear",
      "title": "Clear Cached PEP Data",
      "topics": [
        "pep_cache_clear"
      ]
    },
    {
      "page": "pep_cache_info",
      "title": "Get Cache Information",
      "topics": [
        "pep_cache_info"
      ]
    },
    {
      "page": "pep_check_connectivity",
      "title": "Check Station-Year Connectivity",
      "topics": [
        "pep_check_connectivity"
      ]
    },
    {
      "page": "pep_check_phases",
      "title": "Check for Expected Phenological Phases",
      "topics": [
        "pep_check_phases"
      ]
    },
    {
      "page": "pep_check_phases_multi",
      "title": "Check Multiple Phases Across Species",
      "topics": [
        "pep_check_phases_multi"
      ]
    },
    {
      "page": "pep_completeness",
      "title": "Assess Species and Phase Completeness of Phenological Data",
      "topics": [
        "pep_completeness"
      ]
    },
    {
      "page": "pep_coverage",
      "title": "Assess Data Coverage of PEP725 Phenological Data",
      "topics": [
        "pep_coverage"
      ]
    },
    {
      "page": "pep_download",
      "title": "Download Synthetic PEP725 Data",
      "topics": [
        "pep_download"
      ]
    },
    {
      "page": "pep_flag_outliers",
      "title": "Flag Phenological Outliers",
      "topics": [
        "pep_flag_outliers"
      ]
    },
    {
      "page": "pep_import",
      "title": "Import and preprocess PEP725 phenological data",
      "topics": [
        "pep_import"
      ]
    },
    {
      "page": "pep_outliers_leaflet",
      "title": "Interactive Leaflet Map of Outlier-Flagged Stations",
      "topics": [
        "pep_outliers_leaflet"
      ]
    },
    {
      "page": "pep_plot_outliers",
      "title": "Visualize Phenological Outliers for Inspection",
      "topics": [
        "pep_plot_outliers"
      ]
    },
    {
      "page": "pep_quality",
      "title": "Assess Data Quality of Phenological Observations",
      "topics": [
        "pep_quality"
      ]
    },
    {
      "page": "pep_second_events",
      "title": "Detect Second Flowering and Other Repeated Phenological Events",
      "topics": [
        "pep_second_events"
      ]
    },
    {
      "page": "pep_seed",
      "title": "Minimal Seed Dataset for Synthetic Data Generation",
      "topics": [
        "pep_seed"
      ]
    },
    {
      "page": "pep_simulate",
      "title": "Simulate Synthetic PEP Data",
      "topics": [
        "pep_simulate"
      ]
    },
    {
      "page": "pep-class",
      "title": "PEP725 Phenological Data Class",
      "topics": [
        "pep-class"
      ]
    },
    {
      "page": "pep725_demo",
      "title": "Demonstrate the pep725 Package Functions",
      "topics": [
        "pep725_demo"
      ]
    },
    {
      "page": "pheno_anomaly",
      "title": "Calculate Phenological Anomalies",
      "topics": [
        "pheno_anomaly"
      ]
    },
    {
      "page": "pheno_combine",
      "title": "Create Combined Phenological Time Series",
      "topics": [
        "pheno_combine"
      ]
    },
    {
      "page": "pheno_gradient",
      "title": "Analyze Phenological Gradients with Elevation or Latitude",
      "topics": [
        "pheno_gradient"
      ]
    },
    {
      "page": "pheno_leaflet",
      "title": "Interactive Leaflet Map to Select PEP725 Stations",
      "topics": [
        "pheno_leaflet"
      ]
    },
    {
      "page": "pheno_map",
      "title": "Plot Phenology Station Maps",
      "topics": [
        "pheno_map"
      ]
    },
    {
      "page": "pheno_normals",
      "title": "Calculate Phenological Normals (Climatology)",
      "topics": [
        "pheno_normals"
      ]
    },
    {
      "page": "pheno_plot",
      "title": "Plot Phenological Time Series",
      "topics": [
        "pheno_plot"
      ]
    },
    {
      "page": "pheno_plot_hh",
      "title": "Plot Phenological Time Series for Heading and Harvest",
      "topics": [
        "pheno_plot_hh"
      ]
    },
    {
      "page": "pheno_plot_timeseries",
      "title": "Plot Phenological Time Series",
      "topics": [
        "pheno_plot_timeseries"
      ]
    },
    {
      "page": "pheno_pls",
      "title": "Partial Least Squares Analysis for Phenology-Temperature Relationships",
      "topics": [
        "pheno_pls"
      ]
    },
    {
      "page": "pheno_regional",
      "title": "Compile Regional Phenology Data and Climate Sensitivity Inputs",
      "topics": [
        "pheno_regional"
      ]
    },
    {
      "page": "pheno_regional_hh",
      "title": "Compile Regional Phenological Time Series for Heading and Harvest",
      "topics": [
        "pheno_regional_hh"
      ]
    },
    {
      "page": "pheno_synchrony",
      "title": "Analyze Phenological Synchrony Across Stations",
      "topics": [
        "pheno_synchrony"
      ]
    },
    {
      "page": "pheno_trend_turning",
      "title": "Detect Trend Turning Points in Phenological Time Series",
      "topics": [
        "pheno_trend_turning"
      ]
    },
    {
      "page": "plot_phenology_trends",
      "title": "Plot Robust Phenological Trends",
      "topics": [
        "plot_phenology_trends"
      ]
    },
    {
      "page": "plot.pep",
      "title": "Plot Method for PEP725 Data",
      "topics": [
        "plot.pep"
      ]
    },
    {
      "page": "plot.pep_completeness",
      "title": "Plot Method for Completeness Assessment",
      "topics": [
        "plot.pep_completeness"
      ]
    },
    {
      "page": "plot.pep_coverage",
      "title": "Plot Method for PEP Coverage",
      "topics": [
        "plot.pep_coverage"
      ]
    },
    {
      "page": "plot.pep_outliers",
      "title": "Plot Method for Outlier Detection Results",
      "topics": [
        "plot.pep_outliers"
      ]
    },
    {
      "page": "plot.pep_quality",
      "title": "Plot Method for Data Quality Assessment",
      "topics": [
        "plot.pep_quality"
      ]
    },
    {
      "page": "plot.pheno_anomaly",
      "title": "Plot Method for Phenological Anomalies",
      "topics": [
        "plot.pheno_anomaly"
      ]
    },
    {
      "page": "plot.pheno_combined",
      "title": "Plot Method for Combined Time Series",
      "topics": [
        "plot.pheno_combined"
      ]
    },
    {
      "page": "plot.pheno_gradient",
      "title": "Plot Method for Phenological Gradient Analysis",
      "topics": [
        "plot.pheno_gradient"
      ]
    },
    {
      "page": "plot.pheno_normals",
      "title": "Plot Method for Phenological Normals",
      "topics": [
        "plot.pheno_normals"
      ]
    },
    {
      "page": "plot.pheno_pls",
      "title": "Plot Method for PLS Phenology Results",
      "topics": [
        "plot.pheno_pls"
      ]
    },
    {
      "page": "plot.pheno_synchrony",
      "title": "Plot Method for Phenological Synchrony Analysis",
      "topics": [
        "plot.pheno_synchrony"
      ]
    },
    {
      "page": "plot.pheno_turning",
      "title": "Plot Method for Trend Turning Analysis",
      "topics": [
        "plot.pheno_turning"
      ]
    },
    {
      "page": "plot.second_events",
      "title": "Plot Method for Second Events Detection",
      "topics": [
        "plot.second_events"
      ]
    },
    {
      "page": "print.pep",
      "title": "Print Method for PEP725 Data",
      "topics": [
        "print.pep"
      ]
    },
    {
      "page": "print.pep_completeness",
      "title": "Print Method for Completeness Assessment",
      "topics": [
        "print.pep_completeness"
      ]
    },
    {
      "page": "print.pep_coverage",
      "title": "Print Method for PEP Coverage",
      "topics": [
        "print.pep_coverage"
      ]
    },
    {
      "page": "print.pep_outliers",
      "title": "Print Method for Outlier Detection Results",
      "topics": [
        "print.pep_outliers"
      ]
    },
    {
      "page": "print.pep_quality",
      "title": "Print Method for Data Quality Assessment",
      "topics": [
        "print.pep_quality"
      ]
    },
    {
      "page": "print.phase_check",
      "title": "Print Method for Phase Check Results",
      "topics": [
        "print.phase_check"
      ]
    },
    {
      "page": "print.phase_check_multi",
      "title": "Print Method for Multi-Species Phase Check",
      "topics": [
        "print.phase_check_multi"
      ]
    },
    {
      "page": "print.pheno_anomaly",
      "title": "Print Method for Phenological Anomalies",
      "topics": [
        "print.pheno_anomaly"
      ]
    },
    {
      "page": "print.pheno_combined",
      "title": "Print Method for Combined Time Series",
      "topics": [
        "print.pheno_combined"
      ]
    },
    {
      "page": "print.pheno_gradient",
      "title": "Print Method for Phenological Gradient Analysis",
      "topics": [
        "print.pheno_gradient"
      ]
    },
    {
      "page": "print.pheno_normals",
      "title": "Print Method for Phenological Normals",
      "topics": [
        "print.pheno_normals"
      ]
    },
    {
      "page": "print.pheno_pls",
      "title": "Print Method for PLS Phenology Results",
      "topics": [
        "print.pheno_pls"
      ]
    },
    {
      "page": "print.pheno_synchrony",
      "title": "Print Method for Phenological Synchrony Analysis",
      "topics": [
        "print.pheno_synchrony"
      ]
    },
    {
      "page": "print.pheno_turning",
      "title": "Print Method for Trend Turning Analysis",
      "topics": [
        "print.pheno_turning"
      ]
    },
    {
      "page": "print.second_events",
      "title": "Print Method for Second Events Detection",
      "topics": [
        "print.second_events"
      ]
    },
    {
      "page": "select_phase",
      "title": "Select and Label Phenophases from PEP Time Series",
      "topics": [
        "select_phase"
      ]
    },
    {
      "page": "subspecies_report",
      "title": "Comprehensive Subspecies Availability Report",
      "topics": [
        "subspecies_report"
      ]
    },
    {
      "page": "summarize_subspecies_availability",
      "title": "Summarize Subspecies Phenological Data Availability",
      "topics": [
        "summarize_subspecies_availability"
      ]
    },
    {
      "page": "summary.pep",
      "title": "Summary Method for PEP725 Data",
      "topics": [
        "summary.pep"
      ]
    },
    {
      "page": "summary.pep_completeness",
      "title": "Summary Method for Completeness Assessment",
      "topics": [
        "summary.pep_completeness"
      ]
    },
    {
      "page": "summary.pep_outliers",
      "title": "Summary Method for Outlier Detection Results",
      "topics": [
        "summary.pep_outliers"
      ]
    },
    {
      "page": "summary.pep_quality",
      "title": "Summary Method for Data Quality Assessment",
      "topics": [
        "summary.pep_quality"
      ]
    },
    {
      "page": "summary.pheno_anomaly",
      "title": "Summary Method for Phenological Anomalies",
      "topics": [
        "summary.pheno_anomaly"
      ]
    },
    {
      "page": "summary.pheno_normals",
      "title": "Summary Method for Phenological Normals",
      "topics": [
        "summary.pheno_normals"
      ]
    },
    {
      "page": "summary.pheno_pls",
      "title": "Summary Method for PLS Phenology Results",
      "topics": [
        "summary.pheno_pls"
      ]
    },
    {
      "page": "summary.pheno_synchrony",
      "title": "Summary Method for Phenological Synchrony Analysis",
      "topics": [
        "summary.pheno_synchrony"
      ]
    },
    {
      "page": "summary.second_events",
      "title": "Summary Method for Second Events Detection",
      "topics": [
        "summary.second_events"
      ]
    }
  ],
  "_readme": "https://github.com/matthias-da/pep725/raw/HEAD/README.md",
  "_rundeps": [
    "askpass",
    "class",
    "classInt",
    "cli",
    "cpp11",
    "curl",
    "data.table",
    "DBI",
    "DEoptimR",
    "dplyr",
    "e1071",
    "farver",
    "generics",
    "ggplot2",
    "glue",
    "gtable",
    "httr",
    "isoband",
    "jsonlite",
    "KernSmooth",
    "labeling",
    "lattice",
    "lifecycle",
    "magrittr",
    "MASS",
    "Matrix",
    "mgcv",
    "mime",
    "nlme",
    "openssl",
    "patchwork",
    "pillar",
    "pkgconfig",
    "proxy",
    "purrr",
    "R6",
    "RColorBrewer",
    "Rcpp",
    "rlang",
    "rnaturalearth",
    "robustbase",
    "s2",
    "S7",
    "scales",
    "sf",
    "stringi",
    "stringr",
    "sys",
    "terra",
    "tibble",
    "tidyr",
    "tidyselect",
    "units",
    "utf8",
    "vctrs",
    "viridisLite",
    "withr",
    "wk"
  ],
  "_vignettes": [
    {
      "source": "data-quality.Rmd",
      "filename": "data-quality.html",
      "title": "Data Quality Assessment",
      "author": "Matthias Templ^[University of Applied Sciences Northwestern Switzerland (FHNW)], Barbara Templ^[Swiss Federal Institute for Forest, Snow and Landscape Research (WSL)]",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Introduction",
        "The Data Quality Challenge",
        "What You'll Learn",
        "Prerequisites",
        "Setup",
        "Part 1: Outlier Detection",
        "Why Detect Outliers?",
        "Statistical Methods for Outlier Detection",
        "Method 1: 30-Day Rule (Simple Threshold)",
        "Understanding the Output",
        "Method 2: MAD (Median Absolute Deviation) - Recommended",
        "Method 3: IQR (Interquartile Range) - Also Robust",
        "Method 4: Z-Score - Sensitive but Less Robust",
        "Method 5: GAM Residual - Model-based, Covariate-aware",
        "Method 6: Mahalanobis - Multivariate, Robust (MCD)",
        "Choosing a Method",
        "Summary Statistics",
        "Comparing Outlier Rates Across Species",
        "Visualizing Outliers",
        "1. Overview Plot",
        "2. Seasonal Distribution",
        "3. Detailed Context",
        "4. Geographic Distribution",
        "5. Model Diagnostic (for gam_residual / mahalanobis)",
        "6. Phase-profile Plot (primary Mahalanobis figure)",
        "Part 2: Data Completeness",
        "Why Check Completeness?",
        "Visualizing Completeness Issues",
        "Assessing Completeness",
        "Understanding Completeness Metrics",
        "Filtering by Completeness",
        "Completeness Thresholds for Different Analyses",
        "Visualizing Completeness",
        "Part 3: Phase Presence Validation",
        "Why Check Phase Presence?",
        "Checking Phase Presence",
        "Checking Multiple Species",
        "Common Phases to Check",
        "Part 4: Integrated Quality Workflow",
        "Putting It All Together",
        "Documentation Template",
        "Best Practices Summary",
        "For Outlier Detection",
        "For Abnormal Event Detection",
        "For Completeness Assessment",
        "For Phase Presence Checking",
        "Summary",
        "Key Take-Home Messages",
        "Next Steps",
        "Session Info"
      ],
      "created": "2026-01-30 22:02:37",
      "modified": "2026-04-23 11:56:50",
      "commits": 11
    },
    {
      "source": "getting-started.Rmd",
      "filename": "getting-started.html",
      "title": "Getting Started with pep725",
      "author": "Matthias Templ^[University of Applied Sciences Northwestern Switzerland (FHNW)], Barbara Templ^[Swiss Federal Institute for Forest, Snow and Landscape Research (WSL)]",
      "engine": "knitr::rmarkdown",
      "headings": [
        "What is Phenology?",
        "The PEP725 Database",
        "Why Use the pep725 R Package?",
        "Installation",
        "Loading the Package",
        "Getting Phenological Data",
        "Why Synthetic Data?",
        "Option 1: Download Synthetic Data (Recommended for Learning)",
        "Option 2: Use the Small Seed Dataset",
        "Option 3: Generate Your Own Synthetic Data",
        "Option 4: Import Real PEP725 Data (For Research)",
        "Option 5: Use Your Own Plant Phenological Data",
        "Understanding the Data Structure",
        "What You See in the Output",
        "Key Columns Explained",
        "Understanding Day of Year (DOY)",
        "The pep Class",
        "The Summary Method",
        "Subsetting the Data",
        "Understanding BBCH Codes",
        "How BBCH Codes Work",
        "Looking Up BBCH Codes",
        "Commonly Used BBCH Codes in Phenological Research",
        "Filtering by Phenological Phase",
        "Exploring Data Coverage",
        "Full Coverage Report",
        "Focused Coverage Analysis",
        "Coverage by Groups",
        "Your First Analysis: Tracking Flowering Trends",
        "Comparing with Another Species: Grapevine",
        "Common Pitfalls and Tips",
        "Data Quality Matters",
        "Species Considerations",
        "Next Steps",
        "Phenological Analysis Vignette",
        "Spatial Phenological Patterns Vignette",
        "Data Quality Assessment Vignette",
        "Getting Help",
        "Session Info",
        "References"
      ],
      "created": "2026-01-19 21:08:54",
      "modified": "2026-04-23 11:56:50",
      "commits": 16
    },
    {
      "source": "phenological-analysis.Rmd",
      "filename": "phenological-analysis.html",
      "title": "Phenological Analysis",
      "author": "Matthias Templ^[University of Applied Sciences Northwestern Switzerland (FHNW)], Barbara Templ^[Swiss Federal Institute for Forest, Snow and Landscape Research (WSL)]",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Introduction",
        "What You'll Learn",
        "Prerequisites",
        "Setup",
        "Part 1: Phenological Normals",
        "What are Phenological Normals?",
        "Standard Reference Periods",
        "Calculating Normals with pheno_normals()",
        "Understanding the Output Statistics",
        "Visualizing Normals",
        "Filtering to Specific Phases",
        "Comparing Two Time Periods",
        "Comparing Species: Grapevine with Longer History",
        "Part 2: Phenological Anomalies",
        "What are Anomalies?",
        "How Anomalies are Calculated",
        "Calculating Anomalies with pheno_anomaly()",
        "Understanding Anomaly Metrics",
        "Identifying Extreme Years",
        "Summary of Anomalies",
        "Visualizing Anomalies",
        "Robust vs. Classical Methods",
        "Part 3: Data Quality Assessment",
        "Why Quality Matters",
        "Quality Dimensions",
        "Running Quality Assessment",
        "Understanding Quality Grades",
        "Visualizing Quality Assessment",
        "Filtering Data by Quality",
        "Assessing Quality at Different Levels",
        "Part 4: Complete Analytical Workflow",
        "Part 5: Visualizing Trends",
        "Time Series Plots",
        "Detecting Trend Turning Points",
        "Simple Trend Statistics",
        "Linking Phenology to Climate",
        "Best Practices Summary",
        "Before Analysis",
        "Calculating Normals",
        "Calculating Anomalies",
        "Analyzing Trends",
        "Reporting",
        "Next Steps",
        "Session Info"
      ],
      "created": "2026-01-19 21:08:54",
      "modified": "2026-04-22 21:48:16",
      "commits": 20
    },
    {
      "source": "spatial-patterns.Rmd",
      "filename": "spatial-patterns.html",
      "title": "Spatial Phenological Patterns",
      "author": "Matthias Templ^[University of Applied Sciences Northwestern Switzerland (FHNW)], Barbara Templ^[Swiss Federal Institute for Forest, Snow and Landscape Research (WSL)]",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Introduction",
        "What You'll Learn",
        "Prerequisites",
        "Setup",
        "Part 1: Phenological Gradients",
        "What are Phenological Gradients?",
        "Altitudinal Gradient",
        "Latitudinal Gradient",
        "Why Study Gradients?",
        "Altitudinal Gradient Analysis",
        "Understanding the Function Parameters",
        "Interpreting the Results",
        "Latitudinal Gradient Analysis",
        "Comparing Regression Methods",
        "Which Method Should You Use?",
        "Comparing Species: Grapevine Gradient",
        "Gradients by Region",
        "Visualizing Gradients",
        "Expected Values and Troubleshooting",
        "Reference Values from Literature",
        "When Your Results Differ from Expected",
        "Part 2: Phenological Synchrony",
        "What is Phenological Synchrony?",
        "Visualizing Synchrony Concepts",
        "Why Study Synchrony?",
        "Calculating Synchrony",
        "Understanding the Parameters",
        "Understanding Synchrony Metrics",
        "Temporal Trends in Synchrony",
        "Interpreting Trend Results",
        "Visualizing Synchrony Over Time",
        "Synchrony Without Trend Analysis",
        "Comparing Synchrony: Grapevine vs. Apple",
        "Part 3: Combining Gradient and Synchrony Analysis",
        "Interpreting Combined Results",
        "Part 4: Mapping Phenological Patterns",
        "Interactive Maps with pheno_leaflet()",
        "Features of pheno_leaflet()",
        "Best Practices for Interactive Mapping",
        "Static Maps with pheno_map()",
        "Basic Station Maps",
        "Coloring by Data Attributes",
        "Using Google Maps Background",
        "Mapping Phenological Patterns",
        "Mean Phenological Timing",
        "Phenological Trends",
        "Species-level Variation",
        "Understanding color_by Options",
        "Parameter Reference for pheno_map()",
        "Combining Mapping with Analysis",
        "Best Practices Summary",
        "For Gradient Analysis",
        "For Synchrony Analysis",
        "For Mapping",
        "Summary",
        "Key Take-Home Messages",
        "Next Steps",
        "Session Info"
      ],
      "created": "2026-01-19 21:08:54",
      "modified": "2026-02-17 14:27:48",
      "commits": 14
    }
  ],
  "_score": 5.505149978319906,
  "_indexed": true,
  "_nocasepkg": "pep725",
  "_universes": [
    "matthias-da"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.1.0",
      "date": "2026-05-23T09:14:56.000Z",
      "distro": "noble",
      "commit": "c1b354a2dc3c79c18ea58dd786cedac3628236c1",
      "fileid": "def207b594a61873800e1345da6ffb6eb4d9f0ee9cda8943cffed241c10a35b9",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/matthias-da/actions/runs/26328815376"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "1.1.0",
      "date": "2026-05-23T09:15:01.000Z",
      "distro": "noble",
      "commit": "c1b354a2dc3c79c18ea58dd786cedac3628236c1",
      "fileid": "dcaef39456f9a32a15fb5c750284ca2394a461221bb97b74ad5a1d2bda75e5cc",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/matthias-da/actions/runs/26328815376"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.1.0",
      "date": "2026-05-23T09:15:33.000Z",
      "commit": "c1b354a2dc3c79c18ea58dd786cedac3628236c1",
      "fileid": "89a495119eee46a787fdf3154f14a6a56c32fda83fb273fd0af880824d763800",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/matthias-da/actions/runs/26328815376"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "1.1.0",
      "date": "2026-05-23T09:14:11.000Z",
      "commit": "c1b354a2dc3c79c18ea58dd786cedac3628236c1",
      "fileid": "dd5709f56261fe33b861bf684f7ae94ce73bb76ea4e99f048d6228274f3280d2",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/matthias-da/actions/runs/26328815376"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.1.0",
      "date": "2026-05-23T09:14:51.000Z",
      "commit": "c1b354a2dc3c79c18ea58dd786cedac3628236c1",
      "fileid": "3273bda3e60b6e625c222ee962eb655e9383f21db0fa1435ae6ce461744f5a2f",
      "status": "success",
      "buildurl": "https://github.com/r-universe/matthias-da/actions/runs/26328815376"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.1.0",
      "date": "2026-05-23T09:13:38.000Z",
      "commit": "c1b354a2dc3c79c18ea58dd786cedac3628236c1",
      "fileid": "3dce1d8d0518bd938956ef9f2ca9b1252d8f4d040c152a674085c76a7e7df9a1",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/matthias-da/actions/runs/26328815376"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.1.0",
      "date": "2026-05-23T09:14:19.000Z",
      "commit": "c1b354a2dc3c79c18ea58dd786cedac3628236c1",
      "fileid": "4c12c3d6d6e5b588177cecb6b8da7f39913c326069a904665e7b5e7a14940332",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/matthias-da/actions/runs/26328815376"
    },
    {
      "r": "4.6.0",
      "os": "win",
      "version": "1.1.0",
      "date": "2026-05-23T09:14:16.000Z",
      "commit": "c1b354a2dc3c79c18ea58dd786cedac3628236c1",
      "fileid": "81e22cb3fdcc6f585474543ad91898faf1ed0f80971771c5151a53ec153c44a6",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/matthias-da/actions/runs/26328815376"
    }
  ]
}