├── .Renviron ├── .github ├── .gitignore └── workflows │ ├── pkgdown.yaml │ └── rhub.yaml ├── R ├── .gitignore ├── .DS_Store └── QurvE-package.R ├── inst ├── shiny_app │ ├── .gitignore │ ├── .DS_Store │ └── www │ │ ├── QurvE_logo.png │ │ ├── mapping_layout.png │ │ └── data_instruction.png ├── .DS_Store ├── lac_promoters.xls ├── fluorescence_test_Gen5.xlsx ├── CITATION └── shiny_manuals │ ├── rdm.data.Rd │ ├── growth.gcFitModel.Rd │ ├── growth.drFitSpline.Rd │ └── fl.drFit.Rd ├── .DS_Store ├── examples ├── parse_Gen5.xlsx └── custom_lac_promoters.xlsx ├── docs ├── reference │ ├── Rplot001.png │ ├── Rplot002.png │ ├── Rplot003.png │ ├── fl.drFit-1.png │ ├── fl.drFit-2.png │ ├── fl.drFit-3.png │ ├── inflect-1.png │ ├── plot.dual-1.png │ ├── plot.grid-1.png │ ├── rdm.data-1.png │ ├── rdm.data-2.png │ ├── fl.workflow-1.png │ ├── flFitLinear-1.png │ ├── flFitSpline-1.png │ ├── plot.drFit-1.png │ ├── plot.drFit-2.png │ ├── plot.grofit-1.png │ ├── fl.drFitModel-1.png │ ├── flBootSpline-1.png │ ├── growth.drFit-1.png │ ├── growth.drFit-2.png │ ├── low.integrate-1.png │ ├── plot.drFitfl-1.png │ ├── plot.drFitfl-2.png │ ├── plot.drFitfl-3.png │ ├── plot.flFitRes-1.png │ ├── plot.flFitRes-2.png │ ├── plot.grodata-1.png │ ├── plot.parameter-1.png │ ├── growth.workflow-1.png │ ├── plot.drFitModel-1.png │ ├── plot.drFitSpline-1.png │ ├── plot.flFitLinear-1.png │ ├── plot.flFitSpline-1.png │ ├── plot.gcFitLinear-1.png │ ├── plot.gcFitModel-1.png │ ├── plot.gcFitSpline-1.png │ ├── figures │ │ ├── Data-layout.jpg │ │ └── mapping-layout.png │ ├── growth.drBootSpline-1.png │ ├── growth.drFitModel-1.png │ ├── growth.drFitSpline-1.png │ ├── growth.gcBootSpline-1.png │ ├── growth.gcFitLinear-1.png │ ├── growth.gcFitModel-1.png │ ├── growth.gcFitSpline-1.png │ ├── plot.drBootSpline-1.png │ ├── plot.drFitFLModel-1.png │ ├── plot.dr_parameter-1.png │ ├── plot.flBootSpline-1.png │ ├── plot.gcBootSpline-1.png │ └── libs │ │ ├── dt-core-1.13.4 │ │ └── css │ │ │ └── jquery.dataTables.extra.css │ │ ├── dt-core-1.13.6 │ │ └── css │ │ │ └── jquery.dataTables.extra.css │ │ ├── crosstalk-1.2.0 │ │ ├── css │ │ │ └── crosstalk.min.css │ │ └── scss │ │ │ └── crosstalk.scss │ │ ├── crosstalk-1.2.1 │ │ ├── css │ │ │ └── crosstalk.min.css │ │ └── scss │ │ │ └── crosstalk.scss │ │ └── datatables-css-0.0.0 │ │ └── datatables-crosstalk.css ├── deps │ ├── bootstrap-5.2.2 │ │ ├── fonts │ │ │ ├── S6uyw4BMUTPHvxo.woff │ │ │ ├── 4iCs6KVjbNBYlgo6ew.woff │ │ │ ├── KFOmCnqEu92Fr1Me5g.woff │ │ │ ├── S6u8w4BMUTPHjxswWA.woff │ │ │ ├── S6uyw4BMUTPHjx4wWA.woff │ │ │ ├── 4iCs6KVjbNBYlgoKfw7w.woff │ │ │ ├── KFOmCnqEu92Fr1Mu4mxM.woff │ │ │ ├── S6u8w4BMUTPHjxsAXC-s.woff │ │ │ ├── S6u9w4BMUTPHh6UVeww.woff │ │ │ ├── S6u9w4BMUTPHh7USeww.woff │ │ │ ├── q5uGsou0JOdh94bfvQlr.woff │ │ │ ├── 4iCv6KVjbNBYlgoCxCvTtA.woff │ │ │ ├── CSR64z1Qlv-GDxkbKVQ_TOQ.woff │ │ │ ├── KFOlCnqEu92Fr1MmEU9vAA.woff │ │ │ ├── KFOlCnqEu92Fr1MmSU5vAA.woff │ │ │ ├── KFOlCnqEu92Fr1MmWUlvAA.woff │ │ │ ├── S6u9w4BMUTPHh6UVSwiPHw.woff │ │ │ ├── S6u9w4BMUTPHh7USSwiPHw.woff │ │ │ ├── 4iCv6KVjbNBYlgoCxCvjsGyL.woff │ │ │ ├── KFOlCnqEu92Fr1MmEU9fBBc-.woff │ │ │ ├── KFOlCnqEu92Fr1MmSU5fBBc-.woff │ │ │ ├── KFOlCnqEu92Fr1MmWUlfBBc-.woff │ │ │ ├── CSR54z1Qlv-GDxkbKVQ_dFsvaNA.woff │ │ │ ├── CSR64z1Qlv-GDxkbKVQ_fOAKSw.woff │ │ │ ├── QGYpz_kZZAGCONcK2A4bGOj8mNhL.woff │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3aPA.woff │ │ │ ├── CSR54z1Qlv-GDxkbKVQ_dFsvWNRevw.woff │ │ │ ├── 1adeadb2fe618c5ed46221f15e12b9c8.woff │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7j.woff │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7j.woff │ │ │ ├── a98f7a7574819ba83bec6279a2cecd95.woff │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDQ.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkw.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkw.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkw.woff │ │ │ ├── XRXI3I6Li01BKofiOc5wtlZ2di8HDFwmRTA.woff │ │ │ ├── XRXI3I6Li01BKofiOc5wtlZ2di8HDGUmRTA.woff │ │ │ ├── XRXI3I6Li01BKofiOc5wtlZ2di8HDLshRTA.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdo.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdo.woff │ │ │ ├── 1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pbCIPrc.woff │ │ │ ├── 1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrc.woff │ │ │ ├── JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew9.woff │ │ │ ├── JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew9.woff │ │ │ ├── JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w9.woff │ │ │ ├── UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZs.woff │ │ │ ├── UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZs.woff │ │ │ ├── UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZs.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4k.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1x4gaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkWVAexg.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkWVAexg.woff │ │ │ └── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjWVAexg.woff │ │ └── font.css │ ├── bootstrap-5.3.1 │ │ ├── fonts │ │ │ ├── S6uyw4BMUTPHvxo.woff │ │ │ ├── 4iCs6KVjbNBYlgo6ew.woff │ │ │ ├── KFOmCnqEu92Fr1Me5g.woff │ │ │ ├── S6u8w4BMUTPHjxswWA.woff │ │ │ ├── S6uyw4BMUTPHjx4wWA.woff │ │ │ ├── 4iCs6KVjbNBYlgoKfw7w.woff │ │ │ ├── KFOmCnqEu92Fr1Mu4mxM.woff │ │ │ ├── S6u8w4BMUTPHjxsAXC-s.woff │ │ │ ├── S6u9w4BMUTPHh6UVeww.woff │ │ │ ├── S6u9w4BMUTPHh7USeww.woff │ │ │ ├── q5uGsou0JOdh94bfvQlr.woff │ │ │ ├── 4iCv6KVjbNBYlgoCxCvTtA.woff │ │ │ ├── CSR64z1Qlv-GDxkbKVQ_TOQ.woff │ │ │ ├── KFOlCnqEu92Fr1MmEU9vAA.woff │ │ │ ├── KFOlCnqEu92Fr1MmSU5vAA.woff │ │ │ ├── KFOlCnqEu92Fr1MmWUlvAA.woff │ │ │ ├── S6u9w4BMUTPHh6UVSwiPHw.woff │ │ │ ├── S6u9w4BMUTPHh7USSwiPHw.woff │ │ │ ├── 4iCv6KVjbNBYlgoCxCvjsGyL.woff │ │ │ ├── KFOlCnqEu92Fr1MmEU9fBBc-.woff │ │ │ ├── KFOlCnqEu92Fr1MmSU5fBBc-.woff │ │ │ ├── KFOlCnqEu92Fr1MmWUlfBBc-.woff │ │ │ ├── CSR54z1Qlv-GDxkbKVQ_dFsvaNA.woff │ │ │ ├── CSR64z1Qlv-GDxkbKVQ_fOAKSw.woff │ │ │ ├── QGYpz_kZZAGCONcK2A4bGOj8mNhL.woff │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3aPA.woff │ │ │ ├── CSR54z1Qlv-GDxkbKVQ_dFsvWNRevw.woff │ │ │ ├── 1adeadb2fe618c5ed46221f15e12b9c8.woff │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7j.woff │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7j.woff │ │ │ ├── a98f7a7574819ba83bec6279a2cecd95.woff │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDQ.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkw.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkw.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkw.woff │ │ │ ├── XRXI3I6Li01BKofiOc5wtlZ2di8HDFwmRTA.woff │ │ │ ├── XRXI3I6Li01BKofiOc5wtlZ2di8HDGUmRTA.woff │ │ │ ├── XRXI3I6Li01BKofiOc5wtlZ2di8HDLshRTA.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdo.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdo.woff │ │ │ ├── 1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pbCIPrc.woff │ │ │ ├── 1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrc.woff │ │ │ ├── JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew9.woff │ │ │ ├── JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew9.woff │ │ │ ├── JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w9.woff │ │ │ ├── HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DBKXhM0.woff │ │ │ ├── HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQhM0.woff │ │ │ ├── HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTbI1rSg.woff │ │ │ ├── HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTsoprSg.woff │ │ │ ├── UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZs.woff │ │ │ ├── UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZs.woff │ │ │ ├── UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZs.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsgH1y4k.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgshZ1y4k.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4k.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjr0C4k.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk0ZjaVQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk_RkaVQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkxhjaVQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1x4gaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkWVAexg.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkWVAexg.woff │ │ │ └── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjWVAexg.woff │ │ └── font.css │ └── data-deps.txt ├── pkgdown.yml └── link.svg ├── man ├── figures │ ├── Data-layout.jpg │ └── mapping-layout.png ├── run_app.Rd ├── big_palette.Rd ├── single_hue_palettes.Rd ├── export_RData.Rd ├── export_Table.Rd ├── parse_Gen5Gen6.Rd ├── summary.drFitModel.Rd ├── parse_victorx3.Rd ├── parse_victornivo.Rd ├── summary.drFitSpline.Rd ├── summary.drBootSpline.Rd ├── biosensor.eq.Rd ├── low.integrate.Rd ├── summary.drFitFLModel.Rd ├── summary.gcFitLinear.Rd ├── summary.gcFitModel.Rd ├── read_file.Rd ├── summary.gcFitSpline.Rd ├── zipFastener.Rd ├── summary.flFit.Rd ├── summary.gcBootSpline.Rd ├── growth.drFitModel.Rd ├── summary.gcFit.Rd ├── summary.flFitSpline.Rd ├── table_group_growth_spline.Rd ├── table_group_growth_model.Rd ├── lm_window.Rd ├── table_group_growth_linear.Rd ├── summary.flBootSpline.Rd ├── summary.flFitLinear.Rd ├── inflect.Rd ├── summary.drFit.Rd ├── summary.drFitfl.Rd ├── table_group_fluorescence_spline.Rd ├── buildTooltipOrPopoverOptionsList.Rd ├── table_group_fluorescence_linear.Rd ├── tidy_to_custom.Rd ├── updateResistantPopover.Rd ├── plot.drBootSpline.Rd ├── growth.drBootSpline.Rd ├── QurvE-package.Rd ├── fl.drFitModel.Rd ├── growth.report.Rd ├── fl.report.Rd ├── flBootSpline.Rd ├── rdm.data.Rd ├── growth.gcBootSpline.Rd ├── growth.gcFitModel.Rd ├── plot.gcFitLinear.Rd ├── plot.drFitSpline.Rd ├── growth.drFitSpline.Rd ├── plot.gcFitModel.Rd ├── plot.flFitLinear.Rd ├── parse_data.Rd └── plot.gcBootSpline.Rd ├── vignettes ├── vigfig-grid-plot-1.jpg ├── vigfig-grid-plot-1.png ├── vigfig-plot-drFit-1.png ├── vigfig-plot-linear-1.png ├── vigfig-plot-linear-2.png ├── vigfig_fl-grid-plot-1.png ├── vigfig-plot-parameter-1.png ├── vigfig-plot-parameter-2.png ├── vigfig-plot-parameter-3.png ├── vigfig-plot-parameter-4.png ├── vigfig-plot-parameter-5.png ├── vigfig-plot-parameter-6.png ├── vigfig-raw-data-plot-1.jpg ├── vigfig-raw-data-plot-1.png ├── vigfig_fl-plot-drFit-1.png ├── vigfig_fl-plot-drFit-2.png ├── vigfig_fl-plot-drFit-3.png ├── vigfig_fl-plot-linear-1.png ├── vigfig_fl-plot-linear-2.png ├── vigfig_fl-plot-linear-3.png ├── vigfig_fl-plot-spline-1.png ├── vigfig_fl-plot-spline-2.png ├── vigfig_fl-plot-spline-3.png ├── vigfig-group-spline-plot-1.png ├── vigfig-plot-drBootSpline-1.png ├── vigfig-plot-gcBootSpline-1.jpg ├── vigfig-plot-gcBootSpline-1.png ├── vigfig_fl-plot-linear2-1.png ├── vigfig_fl-plot-linear2-2.png ├── vigfig_fl-plot-linear2-3.png ├── vigfig_fl-plot-parameter-1.png ├── vigfig_fl-plot-parameter-2.png ├── vigfig_fl-plot-parameter-3.png ├── vigfig_fl-plot-parameter-4.png ├── vigfig_fl-raw-data-plot-1.png ├── vigfig-plot-linear-update-1.png ├── vigfig-plot-parameter-update-1.png ├── vigfig_fl-group-spline-plot-1.png ├── precompile.R └── packages.bib ├── CRAN-SUBMISSION ├── _pkgdown.yml ├── .gitignore ├── QurvE.Rproj ├── .Rbuildignore └── NEWS.md /.Renviron: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.github/.gitignore: -------------------------------------------------------------------------------- 1 | *.html 2 | -------------------------------------------------------------------------------- /R/.gitignore: -------------------------------------------------------------------------------- 1 | Report.growth_20220818_140349 2 | -------------------------------------------------------------------------------- /inst/shiny_app/.gitignore: -------------------------------------------------------------------------------- 1 | app_backup.R 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/.DS_Store -------------------------------------------------------------------------------- /R/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/R/.DS_Store -------------------------------------------------------------------------------- /inst/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/inst/.DS_Store -------------------------------------------------------------------------------- /inst/lac_promoters.xls: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/inst/lac_promoters.xls -------------------------------------------------------------------------------- /examples/parse_Gen5.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/examples/parse_Gen5.xlsx -------------------------------------------------------------------------------- /inst/shiny_app/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/inst/shiny_app/.DS_Store -------------------------------------------------------------------------------- /docs/reference/Rplot001.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/Rplot001.png -------------------------------------------------------------------------------- /docs/reference/Rplot002.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/Rplot002.png -------------------------------------------------------------------------------- /docs/reference/Rplot003.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/Rplot003.png -------------------------------------------------------------------------------- /man/figures/Data-layout.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/man/figures/Data-layout.jpg -------------------------------------------------------------------------------- /docs/reference/fl.drFit-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/fl.drFit-1.png -------------------------------------------------------------------------------- /docs/reference/fl.drFit-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/fl.drFit-2.png -------------------------------------------------------------------------------- /docs/reference/fl.drFit-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/fl.drFit-3.png -------------------------------------------------------------------------------- /docs/reference/inflect-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/inflect-1.png -------------------------------------------------------------------------------- /docs/reference/plot.dual-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.dual-1.png -------------------------------------------------------------------------------- /docs/reference/plot.grid-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.grid-1.png -------------------------------------------------------------------------------- /docs/reference/rdm.data-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/rdm.data-1.png -------------------------------------------------------------------------------- /docs/reference/rdm.data-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/rdm.data-2.png -------------------------------------------------------------------------------- /man/figures/mapping-layout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/man/figures/mapping-layout.png -------------------------------------------------------------------------------- /docs/reference/fl.workflow-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/fl.workflow-1.png -------------------------------------------------------------------------------- /docs/reference/flFitLinear-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/flFitLinear-1.png -------------------------------------------------------------------------------- /docs/reference/flFitSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/flFitSpline-1.png -------------------------------------------------------------------------------- /docs/reference/plot.drFit-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.drFit-1.png -------------------------------------------------------------------------------- /docs/reference/plot.drFit-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.drFit-2.png -------------------------------------------------------------------------------- /docs/reference/plot.grofit-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.grofit-1.png -------------------------------------------------------------------------------- /inst/fluorescence_test_Gen5.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/inst/fluorescence_test_Gen5.xlsx -------------------------------------------------------------------------------- /vignettes/vigfig-grid-plot-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-grid-plot-1.jpg -------------------------------------------------------------------------------- /vignettes/vigfig-grid-plot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-grid-plot-1.png -------------------------------------------------------------------------------- /CRAN-SUBMISSION: -------------------------------------------------------------------------------- 1 | Version: 1.1.2 2 | Date: 2025-09-19 13:20:29 UTC 3 | SHA: 6c7baec41a75f99a5ef2c90960c3838c7d25d7f3 4 | -------------------------------------------------------------------------------- /_pkgdown.yml: -------------------------------------------------------------------------------- 1 | url: https://nicwir.github.io/QurvE/ 2 | template: 3 | bootstrap: 5 4 | bootswatch: spacelab 5 | 6 | -------------------------------------------------------------------------------- /docs/reference/fl.drFitModel-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/fl.drFitModel-1.png -------------------------------------------------------------------------------- /docs/reference/flBootSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/flBootSpline-1.png -------------------------------------------------------------------------------- /docs/reference/growth.drFit-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/growth.drFit-1.png -------------------------------------------------------------------------------- /docs/reference/growth.drFit-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/growth.drFit-2.png -------------------------------------------------------------------------------- /docs/reference/low.integrate-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/low.integrate-1.png -------------------------------------------------------------------------------- /docs/reference/plot.drFitfl-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.drFitfl-1.png -------------------------------------------------------------------------------- /docs/reference/plot.drFitfl-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.drFitfl-2.png -------------------------------------------------------------------------------- /docs/reference/plot.drFitfl-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.drFitfl-3.png -------------------------------------------------------------------------------- /docs/reference/plot.flFitRes-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.flFitRes-1.png -------------------------------------------------------------------------------- /docs/reference/plot.flFitRes-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.flFitRes-2.png -------------------------------------------------------------------------------- /docs/reference/plot.grodata-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.grodata-1.png -------------------------------------------------------------------------------- /docs/reference/plot.parameter-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.parameter-1.png -------------------------------------------------------------------------------- /examples/custom_lac_promoters.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/examples/custom_lac_promoters.xlsx -------------------------------------------------------------------------------- /inst/shiny_app/www/QurvE_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/inst/shiny_app/www/QurvE_logo.png -------------------------------------------------------------------------------- /vignettes/vigfig-plot-drFit-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-drFit-1.png -------------------------------------------------------------------------------- /vignettes/vigfig-plot-linear-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-linear-1.png -------------------------------------------------------------------------------- /vignettes/vigfig-plot-linear-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-linear-2.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-grid-plot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-grid-plot-1.png -------------------------------------------------------------------------------- /docs/reference/growth.workflow-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/growth.workflow-1.png -------------------------------------------------------------------------------- /docs/reference/plot.drFitModel-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.drFitModel-1.png -------------------------------------------------------------------------------- /docs/reference/plot.drFitSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.drFitSpline-1.png -------------------------------------------------------------------------------- /docs/reference/plot.flFitLinear-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.flFitLinear-1.png -------------------------------------------------------------------------------- /docs/reference/plot.flFitSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.flFitSpline-1.png -------------------------------------------------------------------------------- /docs/reference/plot.gcFitLinear-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.gcFitLinear-1.png -------------------------------------------------------------------------------- /docs/reference/plot.gcFitModel-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.gcFitModel-1.png -------------------------------------------------------------------------------- /docs/reference/plot.gcFitSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.gcFitSpline-1.png -------------------------------------------------------------------------------- /inst/shiny_app/www/mapping_layout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/inst/shiny_app/www/mapping_layout.png -------------------------------------------------------------------------------- /vignettes/vigfig-plot-parameter-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-parameter-1.png -------------------------------------------------------------------------------- /vignettes/vigfig-plot-parameter-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-parameter-2.png -------------------------------------------------------------------------------- /vignettes/vigfig-plot-parameter-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-parameter-3.png -------------------------------------------------------------------------------- /vignettes/vigfig-plot-parameter-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-parameter-4.png -------------------------------------------------------------------------------- /vignettes/vigfig-plot-parameter-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-parameter-5.png -------------------------------------------------------------------------------- /vignettes/vigfig-plot-parameter-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-parameter-6.png -------------------------------------------------------------------------------- /vignettes/vigfig-raw-data-plot-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-raw-data-plot-1.jpg -------------------------------------------------------------------------------- /vignettes/vigfig-raw-data-plot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-raw-data-plot-1.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-drFit-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-drFit-1.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-drFit-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-drFit-2.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-drFit-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-drFit-3.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-linear-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-linear-1.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-linear-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-linear-2.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-linear-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-linear-3.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-spline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-spline-1.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-spline-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-spline-2.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-spline-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-spline-3.png -------------------------------------------------------------------------------- /docs/reference/figures/Data-layout.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/figures/Data-layout.jpg -------------------------------------------------------------------------------- /docs/reference/growth.drBootSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/growth.drBootSpline-1.png -------------------------------------------------------------------------------- /docs/reference/growth.drFitModel-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/growth.drFitModel-1.png -------------------------------------------------------------------------------- /docs/reference/growth.drFitSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/growth.drFitSpline-1.png -------------------------------------------------------------------------------- /docs/reference/growth.gcBootSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/growth.gcBootSpline-1.png -------------------------------------------------------------------------------- /docs/reference/growth.gcFitLinear-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/growth.gcFitLinear-1.png -------------------------------------------------------------------------------- /docs/reference/growth.gcFitModel-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/growth.gcFitModel-1.png -------------------------------------------------------------------------------- /docs/reference/growth.gcFitSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/growth.gcFitSpline-1.png -------------------------------------------------------------------------------- /docs/reference/plot.drBootSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.drBootSpline-1.png -------------------------------------------------------------------------------- /docs/reference/plot.drFitFLModel-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.drFitFLModel-1.png -------------------------------------------------------------------------------- /docs/reference/plot.dr_parameter-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.dr_parameter-1.png -------------------------------------------------------------------------------- /docs/reference/plot.flBootSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.flBootSpline-1.png -------------------------------------------------------------------------------- /docs/reference/plot.gcBootSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/plot.gcBootSpline-1.png -------------------------------------------------------------------------------- /inst/shiny_app/www/data_instruction.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/inst/shiny_app/www/data_instruction.png -------------------------------------------------------------------------------- /vignettes/vigfig-group-spline-plot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-group-spline-plot-1.png -------------------------------------------------------------------------------- /vignettes/vigfig-plot-drBootSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-drBootSpline-1.png -------------------------------------------------------------------------------- /vignettes/vigfig-plot-gcBootSpline-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-gcBootSpline-1.jpg -------------------------------------------------------------------------------- /vignettes/vigfig-plot-gcBootSpline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-gcBootSpline-1.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-linear2-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-linear2-1.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-linear2-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-linear2-2.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-linear2-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-linear2-3.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-parameter-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-parameter-1.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-parameter-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-parameter-2.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-parameter-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-parameter-3.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-plot-parameter-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-plot-parameter-4.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-raw-data-plot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-raw-data-plot-1.png -------------------------------------------------------------------------------- /docs/reference/figures/mapping-layout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/reference/figures/mapping-layout.png -------------------------------------------------------------------------------- /vignettes/vigfig-plot-linear-update-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-linear-update-1.png -------------------------------------------------------------------------------- /R/QurvE-package.R: -------------------------------------------------------------------------------- 1 | #' @keywords internal 2 | "_PACKAGE" 3 | 4 | ## usethis namespace: start 5 | ## usethis namespace: end 6 | NULL 7 | -------------------------------------------------------------------------------- /vignettes/vigfig-plot-parameter-update-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig-plot-parameter-update-1.png -------------------------------------------------------------------------------- /vignettes/vigfig_fl-group-spline-plot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/vignettes/vigfig_fl-group-spline-plot-1.png -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6uyw4BMUTPHvxo.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/S6uyw4BMUTPHvxo.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6uyw4BMUTPHvxo.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/S6uyw4BMUTPHvxo.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/4iCs6KVjbNBYlgo6ew.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/4iCs6KVjbNBYlgo6ew.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOmCnqEu92Fr1Me5g.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/KFOmCnqEu92Fr1Me5g.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6u8w4BMUTPHjxswWA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/S6u8w4BMUTPHjxswWA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6uyw4BMUTPHjx4wWA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/S6uyw4BMUTPHjx4wWA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgo6ew.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgo6ew.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/KFOmCnqEu92Fr1Me5g.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/KFOmCnqEu92Fr1Me5g.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6u8w4BMUTPHjxswWA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/S6u8w4BMUTPHjxswWA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6uyw4BMUTPHjx4wWA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/S6uyw4BMUTPHjx4wWA.woff -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .Rproj.user 2 | .Rhistory 3 | .RData 4 | .Ruserdata 5 | test 6 | /doc/ 7 | /Meta/ 8 | .DS_Store 9 | Inst/.DS_Store 10 | Create R package.R 11 | -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/4iCs6KVjbNBYlgoKfw7w.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/4iCs6KVjbNBYlgoKfw7w.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOmCnqEu92Fr1Mu4mxM.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/KFOmCnqEu92Fr1Mu4mxM.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6u8w4BMUTPHjxsAXC-s.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/S6u8w4BMUTPHjxsAXC-s.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh6UVeww.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh6UVeww.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh7USeww.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh7USeww.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/q5uGsou0JOdh94bfvQlr.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/q5uGsou0JOdh94bfvQlr.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKfw7w.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKfw7w.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/KFOmCnqEu92Fr1Mu4mxM.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/KFOmCnqEu92Fr1Mu4mxM.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6u8w4BMUTPHjxsAXC-s.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/S6u8w4BMUTPHjxsAXC-s.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh6UVeww.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh6UVeww.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh7USeww.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh7USeww.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/q5uGsou0JOdh94bfvQlr.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/q5uGsou0JOdh94bfvQlr.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/4iCv6KVjbNBYlgoCxCvTtA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/4iCv6KVjbNBYlgoCxCvTtA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/CSR64z1Qlv-GDxkbKVQ_TOQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/CSR64z1Qlv-GDxkbKVQ_TOQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmEU9vAA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmEU9vAA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmSU5vAA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmSU5vAA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmWUlvAA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmWUlvAA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh6UVSwiPHw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh6UVSwiPHw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh7USSwiPHw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh7USSwiPHw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvTtA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvTtA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/CSR64z1Qlv-GDxkbKVQ_TOQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/CSR64z1Qlv-GDxkbKVQ_TOQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/KFOlCnqEu92Fr1MmEU9vAA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/KFOlCnqEu92Fr1MmEU9vAA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/KFOlCnqEu92Fr1MmSU5vAA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/KFOlCnqEu92Fr1MmSU5vAA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/KFOlCnqEu92Fr1MmWUlvAA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/KFOlCnqEu92Fr1MmWUlvAA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh6UVSwiPHw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh6UVSwiPHw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh7USSwiPHw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh7USSwiPHw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/4iCv6KVjbNBYlgoCxCvjsGyL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/4iCv6KVjbNBYlgoCxCvjsGyL.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmEU9fBBc-.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmEU9fBBc-.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmSU5fBBc-.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmSU5fBBc-.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmWUlfBBc-.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmWUlfBBc-.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjsGyL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjsGyL.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/KFOlCnqEu92Fr1MmEU9fBBc-.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/KFOlCnqEu92Fr1MmEU9fBBc-.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/KFOlCnqEu92Fr1MmSU5fBBc-.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/KFOlCnqEu92Fr1MmSU5fBBc-.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/KFOlCnqEu92Fr1MmWUlfBBc-.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/KFOlCnqEu92Fr1MmWUlfBBc-.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvaNA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvaNA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/CSR64z1Qlv-GDxkbKVQ_fOAKSw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/CSR64z1Qlv-GDxkbKVQ_fOAKSw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/QGYpz_kZZAGCONcK2A4bGOj8mNhL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/QGYpz_kZZAGCONcK2A4bGOj8mNhL.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvaNA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvaNA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/CSR64z1Qlv-GDxkbKVQ_fOAKSw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/CSR64z1Qlv-GDxkbKVQ_fOAKSw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/QGYpz_kZZAGCONcK2A4bGOj8mNhL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/QGYpz_kZZAGCONcK2A4bGOj8mNhL.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3aPA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3aPA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvWNRevw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvWNRevw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3aPA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3aPA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvWNRevw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvWNRevw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/1adeadb2fe618c5ed46221f15e12b9c8.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/1adeadb2fe618c5ed46221f15e12b9c8.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7j.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7j.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7j.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7j.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/a98f7a7574819ba83bec6279a2cecd95.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/a98f7a7574819ba83bec6279a2cecd95.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/1adeadb2fe618c5ed46221f15e12b9c8.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/1adeadb2fe618c5ed46221f15e12b9c8.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7j.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7j.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7j.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7j.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/a98f7a7574819ba83bec6279a2cecd95.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/a98f7a7574819ba83bec6279a2cecd95.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDFwmRTA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDFwmRTA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDGUmRTA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDGUmRTA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshRTA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshRTA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDFwmRTA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDFwmRTA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDGUmRTA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDGUmRTA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshRTA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshRTA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdo.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdo.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdo.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdo.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdo.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdo.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdo.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdo.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pbCIPrc.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pbCIPrc.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrc.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrc.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew9.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew9.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew9.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew9.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w9.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w9.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pbCIPrc.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pbCIPrc.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrc.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrc.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew9.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew9.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew9.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew9.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w9.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w9.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DBKXhM0.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DBKXhM0.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQhM0.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQhM0.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTbI1rSg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTbI1rSg.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTsoprSg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTsoprSg.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZs.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZs.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZs.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZs.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZs.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZs.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZs.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZs.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZs.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZs.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZs.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZs.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsgH1y4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsgH1y4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgshZ1y4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgshZ1y4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjr0C4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjr0C4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1x4gaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1x4gaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk0ZjaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk0ZjaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk_RkaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk_RkaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkxhjaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkxhjaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1x4gaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1x4gaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkWVAexg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkWVAexg.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkWVAexg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkWVAexg.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjWVAexg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjWVAexg.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkWVAexg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkWVAexg.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkWVAexg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkWVAexg.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjWVAexg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NicWir/QurvE/HEAD/docs/deps/bootstrap-5.3.1/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjWVAexg.woff -------------------------------------------------------------------------------- /vignettes/precompile.R: -------------------------------------------------------------------------------- 1 | library(knitr) 2 | setwd(dirname(rstudioapi::getSourceEditorContext()$path)) 3 | 4 | knit("vignette_growth_prettydoc.Rmd.orig", "vignette_growth.Rmd") 5 | knit("vignette_fluorescence_prettydoc.Rmd.orig", "vignette_fluorescence.Rmd") 6 | 7 | -------------------------------------------------------------------------------- /vignettes/packages.bib: -------------------------------------------------------------------------------- 1 | @Manual{R-growthrates, 2 | title = {growthrates: Estimate Growth Rates from Experimental Data}, 3 | author = {Thomas Petzoldt}, 4 | year = {2022}, 5 | note = {R package version 0.8.3}, 6 | url = {https://github.com/tpetzoldt/growthrates}, 7 | } 8 | 9 | -------------------------------------------------------------------------------- /docs/deps/data-deps.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /man/run_app.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/shiny_app_functions.R 3 | \name{run_app} 4 | \alias{run_app} 5 | \title{Run Shiny QurvE App} 6 | \usage{ 7 | run_app() 8 | } 9 | \value{ 10 | Launches a browser with the shiny app 11 | } 12 | \description{ 13 | Run Shiny QurvE App 14 | } 15 | \examples{ 16 | if(interactive()){ 17 | # Run the app 18 | run_app() 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /man/big_palette.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \docType{data} 4 | \name{big_palette} 5 | \alias{big_palette} 6 | \title{A palette with 40 colors} 7 | \format{ 8 | An object of class \code{character} of length 50. 9 | } 10 | \usage{ 11 | big_palette 12 | } 13 | \description{ 14 | This palette is used in the package for plotting. 15 | } 16 | \keyword{datasets} 17 | -------------------------------------------------------------------------------- /docs/pkgdown.yml: -------------------------------------------------------------------------------- 1 | pandoc: 3.1.1 2 | pkgdown: 2.0.7 3 | pkgdown_sha: ~ 4 | articles: 5 | shiny_app_manual: shiny_app_manual.html 6 | troubleshooting: troubleshooting.html 7 | vignette_fluorescence: vignette_fluorescence.html 8 | vignette_growth: vignette_growth.html 9 | last_built: 2024-01-26T12:02Z 10 | urls: 11 | reference: https://nicwir.github.io/QurvE/reference 12 | article: https://nicwir.github.io/QurvE/articles 13 | 14 | -------------------------------------------------------------------------------- /man/single_hue_palettes.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \docType{data} 4 | \name{single_hue_palettes} 5 | \alias{single_hue_palettes} 6 | \title{Single hue palettes for ggplot2} 7 | \format{ 8 | An object of class \code{list} of length 11. 9 | } 10 | \usage{ 11 | single_hue_palettes 12 | } 13 | \description{ 14 | These palettes are used in the package for plotting. 15 | } 16 | \keyword{datasets} 17 | -------------------------------------------------------------------------------- /QurvE.Rproj: -------------------------------------------------------------------------------- 1 | Version: 1.0 2 | ProjectId: 8ab29c96-ac0b-490b-99f4-7174f0009698 3 | 4 | RestoreWorkspace: Default 5 | SaveWorkspace: Default 6 | AlwaysSaveHistory: Default 7 | 8 | EnableCodeIndexing: Yes 9 | UseSpacesForTab: Yes 10 | NumSpacesForTab: 2 11 | Encoding: UTF-8 12 | 13 | RnwWeave: Sweave 14 | LaTeX: pdfLaTeX 15 | 16 | AutoAppendNewline: Yes 17 | StripTrailingWhitespace: Yes 18 | 19 | BuildType: Package 20 | PackageUseDevtools: Yes 21 | PackageInstallArgs: --no-multiarch --with-keep.source 22 | -------------------------------------------------------------------------------- /inst/CITATION: -------------------------------------------------------------------------------- 1 | c( 2 | "To cite QurvE in publications use:", 3 | "", 4 | toBibtex( 5 | bibentry( 6 | bibtype = "Article", 7 | title = "QurvE: user-friendly software for the analysis of biological growth and fluorescence data", 8 | author = "Wirth, N.T. and Funk, J. and Donati, S. and others", 9 | journal = "Nat Protoc", 10 | year = 2023, 11 | url = "https://doi.org/10.1038/s41596-023-00850-7", 12 | note = "Wirth, N.T., Funk, J., Donati, S. et al. QurvE: user-friendly software for the analysis of biological growth and fluorescence data. Nat Protoc (2023). https://doi.org/10.1038/s41596-023-00850-7" 13 | ) 14 | ) 15 | ) 16 | -------------------------------------------------------------------------------- /.Rbuildignore: -------------------------------------------------------------------------------- 1 | Create R package.R 2 | ^curvE\.Rproj$ 3 | ^\.Rproj\.user$ 4 | ^_pkgdown\.yml$ 5 | ^docs$ 6 | ^pkgdown$ 7 | ^QurvE\.Rproj$ 8 | ^/vignettes/\.orig$ 9 | ^/vignettes/\.png$ 10 | ^/vignettes/precompile\.R$ 11 | ^/vignettes/prettydoc\.Rmd$ 12 | aux$ 13 | log$ 14 | out$ 15 | \.gitignore$ 16 | README\.md$ 17 | README\.Rmd$ 18 | QurvE\.pdf$ 19 | cran-comments\.md$ 20 | ^/inst/icons 21 | ^/QurvE$ 22 | \.tex 23 | ^doc$ 24 | ^cran-comments\.md$ 25 | \.RData$ 26 | ^CRAN-SUBMISSION$ 27 | ^examples$ 28 | ^\.github$ 29 | index\.md$ 30 | index\.Rmd$ 31 | ^Meta$ 32 | NULL$ 33 | ^/NULL$ 34 | ^/lastMiKTeXException$ 35 | ^/inst/lac_promoters\.xls$ 36 | ^vignettes/vigfig.* 37 | lastMiKTeXException 38 | -------------------------------------------------------------------------------- /man/export_RData.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \name{export_RData} 4 | \alias{export_RData} 5 | \title{Export an R object as .RData file} 6 | \usage{ 7 | export_RData(object, out.dir = tempdir(), out.nm = class(object)) 8 | } 9 | \arguments{ 10 | \item{object}{An R object.} 11 | 12 | \item{out.dir}{The path to the output directory. Default: the working directory} 13 | 14 | \item{out.nm}{The output filename (with or without '.RData' ending). Default: the class of \code{object} followed by '.RData'.} 15 | } 16 | \value{ 17 | \code{NULL} 18 | } 19 | \description{ 20 | Export an R object as .RData file 21 | } 22 | \examples{ 23 | if(interactive()){ 24 | df <- data.frame('A' = seq(1:10), 'B' = rev(seq(1:10))) 25 | 26 | export_RData(df) 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /docs/link.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 8 | 12 | 13 | -------------------------------------------------------------------------------- /man/export_Table.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \name{export_Table} 4 | \alias{export_Table} 5 | \title{Export a tabular object as tab-separated .txt file} 6 | \usage{ 7 | export_Table(table, out.dir = tempdir(), out.nm = deparse(substitute(table))) 8 | } 9 | \arguments{ 10 | \item{table}{A tabular R object (dataframe, matrix, array)} 11 | 12 | \item{out.dir}{The path to the output directory. Default: the working directory} 13 | 14 | \item{out.nm}{The output filename (with or without '.txt' ending). Default: the name of \code{table} followed by '.txt'.} 15 | } 16 | \value{ 17 | \code{NULL} 18 | } 19 | \description{ 20 | Export a tabular object as tab-separated .txt file 21 | } 22 | \examples{ 23 | if(interactive()){ 24 | df <- data.frame('A' = seq(1:10), 'B' = rev(seq(1:10))) 25 | 26 | export_Table(df) 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /man/parse_Gen5Gen6.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/data_parsers.R 3 | \name{parse_Gen5Gen6} 4 | \alias{parse_Gen5Gen6} 5 | \title{Extract relevant data from a raw data export file generated with the "Gen5" or "Gen6" software.} 6 | \usage{ 7 | parse_Gen5Gen6(input) 8 | } 9 | \arguments{ 10 | \item{input}{A dataframe created by reading a table file with \code{\link{read_file}}} 11 | } 12 | \value{ 13 | a list of length two containing growth and/or fluorescence dataframes in the first and second element, respectively. The first column in these dataframes represents a time vector. 14 | } 15 | \description{ 16 | Extract relevant data from a raw data export file generated with the "Gen5" or "Gen6" software. 17 | } 18 | \examples{ 19 | if(interactive()){ 20 | input <- read_file(filename = system.file("fluorescence_test_Gen5.xlsx", package = "QurvE") ) 21 | parsed <- parse_Gen5Gen6(input) 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /man/summary.drFitModel.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_summaries.R 3 | \name{summary.drFitModel} 4 | \alias{summary.drFitModel} 5 | \title{Generic summary function for drFitModel objects} 6 | \usage{ 7 | \method{summary}{drFitModel}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{drFitModel}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with parameters extracted from the dose-response analysis of a single sample. 16 | } 17 | \description{ 18 | Generic summary function for drFitModel objects 19 | } 20 | \examples{ 21 | conc <- c(0, rev(unlist(lapply(1:18, function(x) 10*(2/3)^x))),10) 22 | response <- c(1/(1+exp(-0.7*(4-conc[-20])))+rnorm(19)/50, 0) 23 | 24 | TestRun <- growth.drFitModel(conc, response, drID = 'test') 25 | 26 | print(summary(TestRun)) 27 | 28 | } 29 | -------------------------------------------------------------------------------- /man/parse_victorx3.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/data_parsers.R 3 | \name{parse_victorx3} 4 | \alias{parse_victorx3} 5 | \title{Extract relevant data from a raw data export file generated from the software of Perkin Elmer's "Victor X3" plate readers.} 6 | \usage{ 7 | parse_victorx3(input) 8 | } 9 | \arguments{ 10 | \item{input}{A dataframe created by reading a table file with \code{\link{read_file}}} 11 | } 12 | \value{ 13 | a list of length two containing growth and/or fluorescence dataframes in the first and second element, respectively. The first column in these dataframes represents a time vector. 14 | } 15 | \description{ 16 | Extract relevant data from a raw data export file generated from the software of Perkin Elmer's "Victor X3" plate readers. 17 | } 18 | \examples{ 19 | if(interactive()){ 20 | input <- read_file(filename = system.file("victorx3_output.txt", package = "QurvE") ) 21 | parsed <- parse_victorx3(input) 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /man/parse_victornivo.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/data_parsers.R 3 | \name{parse_victornivo} 4 | \alias{parse_victornivo} 5 | \title{Extract relevant data from a raw data export file generated from the software of Perkin Elmer's "Victor Nivo" plate readers.} 6 | \usage{ 7 | parse_victornivo(input) 8 | } 9 | \arguments{ 10 | \item{input}{A dataframe created by reading a table file with \code{\link{read_file}}} 11 | } 12 | \value{ 13 | a list of length two containing growth and/or fluorescence dataframes in the first and second element, respectively. The first column in these dataframes represents a time vector. 14 | } 15 | \description{ 16 | Extract relevant data from a raw data export file generated from the software of Perkin Elmer's "Victor Nivo" plate readers. 17 | } 18 | \examples{ 19 | if(interactive()){ 20 | input <- read_file(filename = system.file("nivo_output.csv", package = "QurvE"), csvsep = "," ) 21 | parsed <- parse_victornivo(input) 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /man/summary.drFitSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_summaries.R 3 | \name{summary.drFitSpline} 4 | \alias{summary.drFitSpline} 5 | \title{Generic summary function for drFitSpline objects} 6 | \usage{ 7 | \method{summary}{drFitSpline}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{drFitSpline}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with parameters extracted from the dose-response analysis of a single sample. 16 | } 17 | \description{ 18 | Generic summary function for drFitSpline objects 19 | } 20 | \examples{ 21 | conc <- c(0, rev(unlist(lapply(1:18, function(x) 10*(2/3)^x))),10) 22 | response <- c(1/(1+exp(-0.7*(4-conc[-20])))+rnorm(19)/50, 0) 23 | 24 | TestRun <- growth.drFitSpline(conc, response, drID = 'test', 25 | control = growth.control(log.x.dr = TRUE, smooth.dr = 0.8)) 26 | 27 | print(summary(TestRun)) 28 | 29 | } 30 | -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/font.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Open Sans'; 3 | font-style: italic; 4 | font-weight: 400; 5 | font-stretch: normal; 6 | font-display: swap; 7 | src: url(fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff) format('woff'); 8 | } 9 | @font-face { 10 | font-family: 'Open Sans'; 11 | font-style: italic; 12 | font-weight: 700; 13 | font-stretch: normal; 14 | font-display: swap; 15 | src: url(fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff) format('woff'); 16 | } 17 | @font-face { 18 | font-family: 'Open Sans'; 19 | font-style: normal; 20 | font-weight: 400; 21 | font-stretch: normal; 22 | font-display: swap; 23 | src: url(fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff) format('woff'); 24 | } 25 | @font-face { 26 | font-family: 'Open Sans'; 27 | font-style: normal; 28 | font-weight: 700; 29 | font-stretch: normal; 30 | font-display: swap; 31 | src: url(fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff) format('woff'); 32 | } 33 | -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/font.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Open Sans'; 3 | font-style: italic; 4 | font-weight: 400; 5 | font-stretch: normal; 6 | font-display: swap; 7 | src: url(fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff) format('woff'); 8 | } 9 | @font-face { 10 | font-family: 'Open Sans'; 11 | font-style: italic; 12 | font-weight: 700; 13 | font-stretch: normal; 14 | font-display: swap; 15 | src: url(fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff) format('woff'); 16 | } 17 | @font-face { 18 | font-family: 'Open Sans'; 19 | font-style: normal; 20 | font-weight: 400; 21 | font-stretch: normal; 22 | font-display: swap; 23 | src: url(fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff) format('woff'); 24 | } 25 | @font-face { 26 | font-family: 'Open Sans'; 27 | font-style: normal; 28 | font-weight: 700; 29 | font-stretch: normal; 30 | font-display: swap; 31 | src: url(fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff) format('woff'); 32 | } 33 | -------------------------------------------------------------------------------- /man/summary.drBootSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_summaries.R 3 | \name{summary.drBootSpline} 4 | \alias{summary.drBootSpline} 5 | \title{Generic summary function for drBootSpline objects} 6 | \usage{ 7 | \method{summary}{drBootSpline}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{drBootSpline}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with statistical parameters extracted from the dose-response bootstrapping analysis. 16 | } 17 | \description{ 18 | Generic summary function for drBootSpline objects 19 | } 20 | \examples{ 21 | conc <- c(0, rev(unlist(lapply(1:18, function(x) 10*(2/3)^x))),10) 22 | response <- c(1/(1+exp(-0.7*(4-conc[-20])))+stats::rnorm(19)/50, 0) 23 | 24 | TestRun <- growth.drBootSpline(conc, response, drID = 'test', 25 | control = growth.control(log.x.dr = TRUE, smooth.dr = 0.8, nboot.dr = 50)) 26 | 27 | print(summary(TestRun)) 28 | 29 | } 30 | -------------------------------------------------------------------------------- /man/biosensor.eq.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \name{biosensor.eq} 4 | \alias{biosensor.eq} 5 | \title{Internal function used to fit a biosensor response model with \code{\link[minpack.lm]{nlsLM}}} 6 | \usage{ 7 | biosensor.eq(x, y.min, y.max, K, n) 8 | } 9 | \arguments{ 10 | \item{x}{A vector of concentration values} 11 | 12 | \item{y.min}{The minimum fluorescence value} 13 | 14 | \item{y.max}{The maximum fluorescence value} 15 | 16 | \item{K}{Sensitivity parameter} 17 | 18 | \item{n}{Cooperativity parameter} 19 | } 20 | \value{ 21 | A vector of fluorescence values 22 | } 23 | \description{ 24 | Calculates the values of biosensor response model for given time points and response parameters. 25 | } 26 | \examples{ 27 | n <- seq(1:10) 28 | conc <- rev(10*(1/2)^n) 29 | fit <- biosensor.eq(conc, 300, 82000, 0.85, 2) 30 | 31 | } 32 | \references{ 33 | Meyer, A.J., Segall-Shapiro, T.H., Glassey, E. et al. \emph{Escherichia coli “Marionette” strains with 12 highly optimized small-molecule sensors.} Nat Chem Biol 15, 196–204 (2019). DOI: 10.1038/s41589-018-0168-3 34 | } 35 | -------------------------------------------------------------------------------- /man/low.integrate.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/parametric_fits.R 3 | \name{low.integrate} 4 | \alias{low.integrate} 5 | \title{Function to estimate the area under a curve given as x and y(x) values} 6 | \usage{ 7 | low.integrate(x, y) 8 | } 9 | \arguments{ 10 | \item{x}{Numeric vector of x values.} 11 | 12 | \item{y}{Numeric vector of y values with the same length as \code{x}.} 13 | } 14 | \value{ 15 | Numeric value: Area under the smoothed spline. 16 | } 17 | \description{ 18 | Function to estimate the area under a curve given as x and y(x) values 19 | } 20 | \details{ 21 | The function uses the the R internal function \code{\link{smooth.spline}}. 22 | } 23 | \examples{ 24 | # Create random growth dataset 25 | rnd.dataset <- rdm.data(d = 35, mu = 0.8, A = 5, label = 'Test1') 26 | 27 | # Extract time and growth data for single sample 28 | time <- rnd.dataset$time[1,] 29 | data <- as.numeric(rnd.dataset$data[1,-(1:3)]) # Remove identifier columns 30 | 31 | plot(time, data) 32 | 33 | print(low.integrate(time, data)) 34 | 35 | } 36 | \seealso{ 37 | \code{\link{smooth.spline}} 38 | } 39 | -------------------------------------------------------------------------------- /man/summary.drFitFLModel.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/fluorescence_summaries.R 3 | \name{summary.drFitFLModel} 4 | \alias{summary.drFitFLModel} 5 | \title{Generic summary function for drFitFLModel objects} 6 | \usage{ 7 | \method{summary}{drFitFLModel}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{drFitModel}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with biosensor response parameters. 16 | } 17 | \description{ 18 | Generic summary function for drFitFLModel objects 19 | } 20 | \examples{ 21 | # Create concentration values via a serial dilution 22 | conc <- c(0, rev(unlist(lapply(1:18, function(x) 10*(2/3)^x))),10) 23 | 24 | # Simulate response values via biosensor equation 25 | response <- biosensor.eq(conc, y.min = 110, y.max = 6000, K = 0.5, n = 2) + 26 | 0.01*6000*rnorm(10) 27 | 28 | # Perform fit 29 | TestRun <- fl.drFitModel(conc, response, drID = 'test', control = fl.control()) 30 | 31 | print(summary(TestRun)) 32 | 33 | } 34 | -------------------------------------------------------------------------------- /man/summary.gcFitLinear.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_summaries.R 3 | \name{summary.gcFitLinear} 4 | \alias{summary.gcFitLinear} 5 | \title{Generic summary function for gcFitLinear objects} 6 | \usage{ 7 | \method{summary}{gcFitLinear}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{gcFitLinear}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with parameters extracted from the linear fit. 16 | } 17 | \description{ 18 | Generic summary function for gcFitLinear objects 19 | } 20 | \examples{ 21 | # Create random growth dataset 22 | rnd.dataset <- rdm.data(d = 35, mu = 0.8, A = 5, label = 'Test1') 23 | 24 | # Extract time and growth data for single sample 25 | time <- rnd.dataset$time[1,] 26 | data <- rnd.dataset$data[1,-(1:3)] # Remove identifier columns 27 | 28 | # Perform linear fit 29 | TestFit <- growth.gcFitLinear(time, data, gcID = 'TestFit', 30 | control = growth.control(fit.opt = 'l')) 31 | 32 | summary(TestFit) 33 | 34 | } 35 | -------------------------------------------------------------------------------- /man/summary.gcFitModel.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_summaries.R 3 | \name{summary.gcFitModel} 4 | \alias{summary.gcFitModel} 5 | \title{Generic summary function for gcFitModel objects} 6 | \usage{ 7 | \method{summary}{gcFitModel}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{gcFitModel}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with parameters extracted from the growth model fit. 16 | } 17 | \description{ 18 | Generic summary function for gcFitModel objects 19 | } 20 | \examples{ 21 | # Create random growth dataset 22 | rnd.dataset <- rdm.data(d = 35, mu = 0.8, A = 5, label = 'Test1') 23 | 24 | # Extract time and growth data for single sample 25 | time <- rnd.dataset$time[1,] 26 | data <- rnd.dataset$data[1,-(1:3)] # Remove identifier columns 27 | 28 | # Perform parametric fit 29 | TestFit <- growth.gcFitModel(time, data, gcID = 'TestFit', 30 | control = growth.control(fit.opt = 'm')) 31 | 32 | summary(TestFit) 33 | 34 | } 35 | -------------------------------------------------------------------------------- /man/read_file.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/data_parsers.R 3 | \name{read_file} 4 | \alias{read_file} 5 | \title{Call the appropriate function required to read a table file and return the table as a dataframe object.} 6 | \usage{ 7 | read_file(filename, csvsep = ";", dec = ".", sheet = 1) 8 | } 9 | \arguments{ 10 | \item{filename}{(Character) Name or path of the table file to read. Can be of type CSV, XLS, XLSX, TSV, or TXT.} 11 | 12 | \item{csvsep}{(Character) separator used in CSV file (ignored for other file types).} 13 | 14 | \item{dec}{(Character) decimal separator used in CSV, TSV and TXT files.} 15 | 16 | \item{sheet}{(Numeric or Character) Number or name of a sheet in XLS or XLSX files (\emph{optional}). Default: \code{";"}} 17 | } 18 | \value{ 19 | A dataframe object with headers in the first row. 20 | } 21 | \description{ 22 | \code{read_file} automatically detects the format of a file provided as \code{filename} and calls the appropriate function to read the table file. 23 | } 24 | \examples{ 25 | input <- read_file(filename = system.file("2-FMA_toxicity.csv", package = "QurvE"), csvsep = ";" ) 26 | 27 | } 28 | -------------------------------------------------------------------------------- /man/summary.gcFitSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_summaries.R 3 | \name{summary.gcFitSpline} 4 | \alias{summary.gcFitSpline} 5 | \title{Generic summary function for gcFitSpline objects} 6 | \usage{ 7 | \method{summary}{gcFitSpline}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{gcFitSpline}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with parameters extracted from the nonparametric fit. 16 | } 17 | \description{ 18 | Generic summary function for gcFitSpline objects 19 | } 20 | \examples{ 21 | # Create random growth dataset 22 | rnd.dataset <- rdm.data(d = 35, mu = 0.8, A = 5, label = 'Test1') 23 | 24 | # Extract time and growth data for single sample 25 | time <- rnd.dataset$time[1,] 26 | data <- rnd.dataset$data[1,-(1:3)] # Remove identifier columns 27 | 28 | # Perform linear fit 29 | TestFit <- growth.gcFitSpline(time, data, gcID = 'TestFit', 30 | control = growth.control(fit.opt = 's')) 31 | 32 | summary(TestFit) 33 | 34 | } 35 | -------------------------------------------------------------------------------- /docs/reference/libs/dt-core-1.13.4/css/jquery.dataTables.extra.css: -------------------------------------------------------------------------------- 1 | /* Selected rows/cells */ 2 | table.dataTable tr.selected td, table.dataTable td.selected { 3 | background-color: #b0bed9 !important; 4 | } 5 | /* In case of scrollX/Y or FixedHeader */ 6 | .dataTables_scrollBody .dataTables_sizing { 7 | visibility: hidden; 8 | } 9 | 10 | /* The datatables' theme CSS file doesn't define 11 | the color but with white background. It leads to an issue that 12 | when the HTML's body color is set to 'white', the user can't 13 | see the text since the background is white. One case happens in the 14 | RStudio's IDE when inline viewing the DT table inside an Rmd file, 15 | if the IDE theme is set to "Cobalt". 16 | 17 | See https://github.com/rstudio/DT/issues/447 for more info 18 | 19 | This fixes should have little side-effects because all the other elements 20 | of the default theme use the #333 font color. 21 | 22 | TODO: The upstream may use relative colors for both the table background 23 | and the color. It means the table can display well without this patch 24 | then. At that time, we need to remove the below CSS attributes. 25 | */ 26 | div.datatables { 27 | color: #333; 28 | } 29 | -------------------------------------------------------------------------------- /docs/reference/libs/dt-core-1.13.6/css/jquery.dataTables.extra.css: -------------------------------------------------------------------------------- 1 | /* Selected rows/cells */ 2 | table.dataTable tr.selected td, table.dataTable td.selected { 3 | background-color: #b0bed9 !important; 4 | } 5 | /* In case of scrollX/Y or FixedHeader */ 6 | .dataTables_scrollBody .dataTables_sizing { 7 | visibility: hidden; 8 | } 9 | 10 | /* The datatables' theme CSS file doesn't define 11 | the color but with white background. It leads to an issue that 12 | when the HTML's body color is set to 'white', the user can't 13 | see the text since the background is white. One case happens in the 14 | RStudio's IDE when inline viewing the DT table inside an Rmd file, 15 | if the IDE theme is set to "Cobalt". 16 | 17 | See https://github.com/rstudio/DT/issues/447 for more info 18 | 19 | This fixes should have little side-effects because all the other elements 20 | of the default theme use the #333 font color. 21 | 22 | TODO: The upstream may use relative colors for both the table background 23 | and the color. It means the table can display well without this patch 24 | then. At that time, we need to remove the below CSS attributes. 25 | */ 26 | div.datatables { 27 | color: #333; 28 | } 29 | -------------------------------------------------------------------------------- /man/zipFastener.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \name{zipFastener} 4 | \alias{zipFastener} 5 | \title{Combine two dataframes like a zip-fastener} 6 | \usage{ 7 | zipFastener(df1, df2, along = 2) 8 | } 9 | \arguments{ 10 | \item{df1}{A first dataframe.} 11 | 12 | \item{df2}{A second dataframe with the same dimensions as \code{df1}.} 13 | 14 | \item{along}{\code{1} to alternate rows or \code{2} to alternate columns.} 15 | } 16 | \value{ 17 | A dataframe with combined rows (or columns) of df1 and df2. 18 | } 19 | \description{ 20 | Combine rows or columns of two dataframes in an alternating manner 21 | } 22 | \examples{ 23 | # data frames equal dimensions 24 | df1 <- plyr::rdply(3, rep('o',4))[ ,-1] 25 | df2 <- plyr::rdply(3, rep('X',4))[ ,-1] 26 | 27 | zipFastener(df1, df2) 28 | zipFastener(df1, df2, 2) 29 | zipFastener(df1, df2, 1) 30 | 31 | # data frames unequal in no. of rows 32 | df1 <- plyr::rdply(10, rep('o',4))[ ,-1] 33 | zipFastener(df1, df2, 1) 34 | zipFastener(df2, df1, 1) 35 | 36 | # data frames unequal in no. of columns 37 | df2 <- plyr::rdply(10, rep('X',3))[ ,-1] 38 | zipFastener(df1, df2) 39 | zipFastener(df2, df1, 2) 40 | 41 | } 42 | \author{ 43 | Mark Heckmann 44 | } 45 | -------------------------------------------------------------------------------- /man/summary.flFit.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/fluorescence_summaries.R 3 | \name{summary.flFit} 4 | \alias{summary.flFit} 5 | \title{Generic summary function for flFit objects} 6 | \usage{ 7 | \method{summary}{flFit}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{flFit}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with parameters extracted from all fits of a workflow. 16 | } 17 | \description{ 18 | Generic summary function for flFit objects 19 | } 20 | \examples{ 21 | # load example dataset 22 | input <- read_data(data.growth = system.file("lac_promoters_growth.txt", package = "QurvE"), 23 | data.fl = system.file("lac_promoters_fluorescence.txt", package = "QurvE"), 24 | csvsep = "\t", 25 | csvsep.fl = "\t") 26 | 27 | # Run curve fitting workflow 28 | res <- flFit(fl_data = input$norm.fluorescence, 29 | time = input$time, 30 | parallelize = FALSE, 31 | control = fl.control(fit.opt = 's', suppress.messages = TRUE, 32 | x_type = 'time', norm_fl = TRUE, nboot.fl = 20)) 33 | 34 | summary(res) 35 | 36 | } 37 | -------------------------------------------------------------------------------- /docs/reference/libs/crosstalk-1.2.0/css/crosstalk.min.css: -------------------------------------------------------------------------------- 1 | .container-fluid.crosstalk-bscols{margin-left:-30px;margin-right:-30px;white-space:normal}body>.container-fluid.crosstalk-bscols{margin-left:auto;margin-right:auto}.crosstalk-input-checkboxgroup .crosstalk-options-group .crosstalk-options-column{display:inline-block;padding-right:12px;vertical-align:top}@media only screen and (max-width: 480px){.crosstalk-input-checkboxgroup .crosstalk-options-group .crosstalk-options-column{display:block;padding-right:inherit}}.crosstalk-input{margin-bottom:15px}.crosstalk-input .control-label{margin-bottom:0;vertical-align:middle}.crosstalk-input input[type="checkbox"]{margin:4px 0 0;margin-top:1px;line-height:normal}.crosstalk-input .checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.crosstalk-input .checkbox>label{padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.crosstalk-input .checkbox input[type="checkbox"],.crosstalk-input .checkbox-inline input[type="checkbox"]{position:absolute;margin-top:2px;margin-left:-20px}.crosstalk-input .checkbox+.checkbox{margin-top:-5px}.crosstalk-input .checkbox-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.crosstalk-input .checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px} 2 | -------------------------------------------------------------------------------- /docs/reference/libs/crosstalk-1.2.1/css/crosstalk.min.css: -------------------------------------------------------------------------------- 1 | .container-fluid.crosstalk-bscols{margin-left:-30px;margin-right:-30px;white-space:normal}body>.container-fluid.crosstalk-bscols{margin-left:auto;margin-right:auto}.crosstalk-input-checkboxgroup .crosstalk-options-group .crosstalk-options-column{display:inline-block;padding-right:12px;vertical-align:top}@media only screen and (max-width: 480px){.crosstalk-input-checkboxgroup .crosstalk-options-group .crosstalk-options-column{display:block;padding-right:inherit}}.crosstalk-input{margin-bottom:15px}.crosstalk-input .control-label{margin-bottom:0;vertical-align:middle}.crosstalk-input input[type="checkbox"]{margin:4px 0 0;margin-top:1px;line-height:normal}.crosstalk-input .checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.crosstalk-input .checkbox>label{padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.crosstalk-input .checkbox input[type="checkbox"],.crosstalk-input .checkbox-inline input[type="checkbox"]{position:absolute;margin-top:2px;margin-left:-20px}.crosstalk-input .checkbox+.checkbox{margin-top:-5px}.crosstalk-input .checkbox-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.crosstalk-input .checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px} 2 | -------------------------------------------------------------------------------- /man/summary.gcBootSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_summaries.R 3 | \name{summary.gcBootSpline} 4 | \alias{summary.gcBootSpline} 5 | \title{Generic summary function for gcBootSpline objects} 6 | \usage{ 7 | \method{summary}{gcBootSpline}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{gcBootSpline}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with statistical parameters extracted from the spline fit bootstrapping computation. 16 | } 17 | \description{ 18 | Generic summary function for gcBootSpline objects 19 | } 20 | \examples{ 21 | # Create random growth dataset 22 | rnd.dataset <- rdm.data(d = 35, mu = 0.8, A = 5, label = 'Test1') 23 | 24 | # Extract time and growth data for single sample 25 | time <- rnd.dataset$time[1,] 26 | data <- rnd.dataset$data[1,-(1:3)] # Remove identifier columns 27 | 28 | # Introduce some noise into the measurements 29 | data <- data + stats::runif(97, -0.01, 0.09) 30 | 31 | # Perform bootstrapping spline fit 32 | TestFit <- growth.gcBootSpline(time, data, gcID = 'TestFit', 33 | control = growth.control(fit.opt = 's', nboot.gc = 50)) 34 | 35 | summary(TestFit) 36 | 37 | } 38 | -------------------------------------------------------------------------------- /man/growth.drFitModel.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dose-response-analysis.R 3 | \name{growth.drFitModel} 4 | \alias{growth.drFitModel} 5 | \title{Fit various models to response vs. concentration data of a single sample to determine the EC50.} 6 | \usage{ 7 | growth.drFitModel(conc, test, drID = "undefined", control = growth.control()) 8 | } 9 | \arguments{ 10 | \item{conc}{Vector of concentration values.} 11 | 12 | \item{test}{Vector of response parameter values of the same length as \code{conc}.} 13 | 14 | \item{drID}{(Character) The name of the analyzed condition} 15 | 16 | \item{control}{A \code{grofit.control} object created with \code{\link{growth.control}}, defining relevant fitting options.} 17 | } 18 | \value{ 19 | A \code{drFitModel} object. 20 | } 21 | \description{ 22 | Fit various models to response vs. concentration data of a single sample to determine the EC50. 23 | } 24 | \examples{ 25 | conc <- c(0, rev(unlist(lapply(1:18, function(x) 10*(2/3)^x))),10) 26 | response <- c(1/(1+exp(-0.7*(4-conc[-20])))+rnorm(19)/50, 0) 27 | 28 | TestRun <- growth.drFitModel(conc, response, drID = 'test') 29 | 30 | print(summary(TestRun)) 31 | plot(TestRun) 32 | } 33 | \references{ 34 | Christian Ritz, Florent Baty, Jens C. Streibig, Daniel Gerhard (2015). \emph{Dose-Response Analysis Using R}. PLoS ONE 10(12): e0146021. DOI: 10.1371/journal.pone.0146021 35 | } 36 | -------------------------------------------------------------------------------- /man/summary.gcFit.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_summaries.R 3 | \name{summary.gcFit} 4 | \alias{summary.gcFit} 5 | \title{Generic summary function for gcFit objects} 6 | \usage{ 7 | \method{summary}{gcFit}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{gcFit}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with parameters extracted from all fits of a workflow. 16 | } 17 | \description{ 18 | Generic summary function for gcFit objects 19 | } 20 | \examples{ 21 | \donttest{ 22 | # Create random growth data set 23 | rnd.data1 <- rdm.data(d = 35, mu = 0.8, A = 5, label = 'Test1') 24 | rnd.data2 <- rdm.data(d = 35, mu = 0.6, A = 4.5, label = 'Test2') 25 | 26 | rnd.data <- list() 27 | rnd.data[['time']] <- rbind(rnd.data1$time, rnd.data2$time) 28 | rnd.data[['data']] <- rbind(rnd.data1$data, rnd.data2$data) 29 | 30 | # Run growth curve analysis workflow 31 | gcFit <- growth.gcFit(time = rnd.data$time, 32 | data = rnd.data$data, 33 | parallelize = FALSE, 34 | control = growth.control(fit.opt = 's', 35 | suppress.messages = TRUE, 36 | nboot.gc = 20)) 37 | summary(gcFit) 38 | } 39 | 40 | } 41 | -------------------------------------------------------------------------------- /man/summary.flFitSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/fluorescence_summaries.R 3 | \name{summary.flFitSpline} 4 | \alias{summary.flFitSpline} 5 | \title{Generic summary function for flFitSpline objects} 6 | \usage{ 7 | \method{summary}{flFitSpline}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{flFitSpline}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with parameters extracted from a nonparametric fit. 16 | } 17 | \description{ 18 | Generic summary function for flFitSpline objects 19 | } 20 | \examples{ 21 | # load example dataset 22 | input <- read_data(data.growth = system.file("lac_promoters_growth.txt", package = "QurvE"), 23 | data.fl = system.file("lac_promoters_fluorescence.txt", package = "QurvE"), 24 | csvsep = "\t", 25 | csvsep.fl = "\t") 26 | 27 | # Extract time and normalized fluorescence data for single sample 28 | time <- input$time[4,] 29 | data <- input$norm.fluorescence[4,-(1:3)] # Remove identifier columns 30 | 31 | # Perform linear fit 32 | TestFit <- flFitSpline(time = time, 33 | fl_data = data, 34 | ID = 'TestFit', 35 | control = fl.control(fit.opt = 's', x_type = 'time')) 36 | 37 | summary(TestFit) 38 | } 39 | -------------------------------------------------------------------------------- /.github/workflows/pkgdown.yaml: -------------------------------------------------------------------------------- 1 | # Workflow derived from https://github.com/r-lib/actions/tree/v2/examples 2 | # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help 3 | on: 4 | push: 5 | branches: [main, master] 6 | pull_request: 7 | branches: [main, master] 8 | release: 9 | types: [published] 10 | workflow_dispatch: 11 | 12 | name: pkgdown 13 | 14 | jobs: 15 | pkgdown: 16 | runs-on: ubuntu-latest 17 | # Only restrict concurrency for non-PR jobs 18 | concurrency: 19 | group: pkgdown-${{ github.event_name != 'pull_request' || github.run_id }} 20 | env: 21 | GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} 22 | steps: 23 | - uses: actions/checkout@v3 24 | 25 | - uses: r-lib/actions/setup-pandoc@v2 26 | 27 | - uses: r-lib/actions/setup-r@v2 28 | with: 29 | use-public-rspm: true 30 | 31 | - uses: r-lib/actions/setup-r-dependencies@v2 32 | with: 33 | extra-packages: any::pkgdown, local::. 34 | needs: website 35 | 36 | - name: Build site 37 | run: pkgdown::build_site_github_pages(new_process = FALSE, install = FALSE) 38 | shell: Rscript {0} 39 | 40 | - name: Deploy to GitHub pages 🚀 41 | if: github.event_name != 'pull_request' 42 | uses: JamesIves/github-pages-deploy-action@v4.4.1 43 | with: 44 | clean: false 45 | branch: gh-pages 46 | folder: docs 47 | -------------------------------------------------------------------------------- /man/table_group_growth_spline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/group_tables.R 3 | \name{table_group_growth_spline} 4 | \alias{table_group_growth_spline} 5 | \title{Generate a grouped results table for spline fits with average and standard deviations} 6 | \usage{ 7 | table_group_growth_spline(gcTable, html = FALSE) 8 | } 9 | \arguments{ 10 | \item{gcTable}{An object of class \code{gcTable}} 11 | 12 | \item{html}{(Logical) Should column headers contain html formatting?} 13 | } 14 | \value{ 15 | A data frame with grouped spline fit results. Empty cells indicate that no reliable fit could be determined. 16 | } 17 | \description{ 18 | Generate a grouped results table for spline fits with average and standard deviations 19 | } 20 | \examples{ 21 | # Create random growth data set 22 | rnd.data <- rdm.data(d = 35, mu = 0.8, A = 5, label = "Test1") 23 | 24 | # Run growth curve analysis workflow 25 | res <- growth.workflow(time = rnd.data$time, 26 | data = rnd.data$data, 27 | fit.opt = "s", 28 | ec50 = FALSE, 29 | export.res = FALSE, 30 | parallelize = FALSE, 31 | suppress.messages = TRUE) 32 | 33 | table_group_growth_spline(res$gcFit$gcTable) 34 | 35 | # with HTML formatting 36 | DT::datatable(table_group_growth_spline(res$gcFit$gcTable, html = TRUE), 37 | escape = FALSE) # Do not escape HTML entities 38 | 39 | } 40 | -------------------------------------------------------------------------------- /man/table_group_growth_model.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/group_tables.R 3 | \name{table_group_growth_model} 4 | \alias{table_group_growth_model} 5 | \title{Generate a grouped results table for parametric fits with average and standard deviations} 6 | \usage{ 7 | table_group_growth_model(gcTable, html = FALSE) 8 | } 9 | \arguments{ 10 | \item{gcTable}{An object of class \code{gcTable}} 11 | 12 | \item{html}{(Logical) Should column headers contain html formatting?} 13 | } 14 | \value{ 15 | A data frame with grouped model fit results. Empty cells indicate that no reliable fit could be determined. 16 | } 17 | \description{ 18 | Generate a grouped results table for parametric fits with average and standard deviations 19 | } 20 | \examples{ 21 | # Create random growth data set 22 | rnd.data <- rdm.data(d = 35, mu = 0.8, A = 5, label = "Test1") 23 | 24 | 25 | # Run growth curve analysis workflow 26 | res <- growth.workflow(time = rnd.data$time, 27 | data = rnd.data$data, 28 | fit.opt = "m", 29 | ec50 = FALSE, 30 | export.res = FALSE, 31 | parallelize = FALSE, 32 | suppress.messages = TRUE) 33 | 34 | table_group_growth_model(res$gcFit$gcTable) 35 | 36 | # with HTML formatting 37 | DT::datatable(table_group_growth_model(res$gcFit$gcTable, html = TRUE), 38 | escape = FALSE) # Do not escape HTML entities 39 | 40 | } 41 | -------------------------------------------------------------------------------- /man/lm_window.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/linear_fits.R 3 | \name{lm_parms} 4 | \alias{lm_parms} 5 | \alias{lm_window} 6 | \title{Helper functions for handling linear fits.} 7 | \usage{ 8 | lm_parms(m) 9 | 10 | lm_window(x, y, i0, h = 5) 11 | } 12 | \arguments{ 13 | \item{m}{linear model (\code{lm}) object} 14 | 15 | \item{x}{vector of independent variable (e.g. time).} 16 | 17 | \item{y}{vector of dependent variable (concentration of organisms).} 18 | 19 | \item{i0}{index of first value used for a window.} 20 | 21 | \item{h}{with of the window (number of data).} 22 | } 23 | \value{ 24 | linear model object of class \code{lm} (lm_window) 25 | resp. vector with parameters of the fit (lm_parms). 26 | } 27 | \description{ 28 | \code{lm_window} performs a linear regression with the Theil-Sen estimator on a subset of data. 29 | } 30 | \examples{ 31 | # Create random growth dataset 32 | rnd.dataset <- rdm.data(d = 35, mu = 0.8, A = 5, label = "Test1") 33 | 34 | # Extract time and growth data for single sample 35 | time <- rnd.dataset$time[1,] 36 | data <- as.numeric(rnd.dataset$data[1,-(1:3)]) # Remove identifier columns 37 | data.log <- log(data/data[1]) 38 | 39 | # Perform linear fit on 8th window of size 8 40 | linreg <- lm_window(time, data.log, 8, h=8) 41 | 42 | summary(linreg) 43 | 44 | lm_parms(linreg) 45 | } 46 | \references{ 47 | Hall, B. G., H. Acar and M. Barlow 2013. Growth Rates Made Easy. 48 | Mol. Biol. Evol. 31: 232-238 \doi{10.1093/molbev/mst197} 49 | } 50 | -------------------------------------------------------------------------------- /man/table_group_growth_linear.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/group_tables.R 3 | \name{table_group_growth_linear} 4 | \alias{table_group_growth_linear} 5 | \title{Generate a grouped results table for linear fits with average and standard deviations} 6 | \usage{ 7 | table_group_growth_linear(gcTable, html = FALSE) 8 | } 9 | \arguments{ 10 | \item{gcTable}{An object of class \code{gcTable}} 11 | 12 | \item{html}{(Logical) Should column headers contain html formatting?} 13 | } 14 | \value{ 15 | A data frame with grouped linear fit results. Empty cells indicate that no reliable fit could be determined. 16 | } 17 | \description{ 18 | Generate a grouped results table for linear fits with average and standard deviations 19 | } 20 | \examples{ 21 | \donttest{ 22 | # Create random growth data set 23 | rnd.data <- rdm.data(d = 30, mu = 0.6, A = 4.5, label = "Test2") 24 | 25 | 26 | # Run growth curve analysis workflow 27 | res <- growth.workflow(time = rnd.data$time, 28 | data = rnd.data$data, 29 | fit.opt = "l", 30 | ec50 = FALSE, 31 | export.res = FALSE, 32 | parallelize = FALSE, 33 | suppress.messages = TRUE) 34 | 35 | table_group_growth_linear(res$gcFit$gcTable) 36 | 37 | # with HTML formatting 38 | DT::datatable(table_group_growth_linear(res$gcFit$gcTable, html = TRUE), 39 | escape = FALSE) # Do not escape HTML entities 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /man/summary.flBootSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/fluorescence_summaries.R 3 | \name{summary.flBootSpline} 4 | \alias{summary.flBootSpline} 5 | \title{Generic summary function for flBootSpline objects} 6 | \usage{ 7 | \method{summary}{flBootSpline}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{flBootSpline}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with statistical parameters extracted from a dose-response bootstrapping analysis. 16 | } 17 | \description{ 18 | Generic summary function for flBootSpline objects 19 | } 20 | \examples{ 21 | # load example dataset 22 | input <- read_data(data.growth = system.file("lac_promoters_growth.txt", package = "QurvE"), 23 | data.fl = system.file("lac_promoters_fluorescence.txt", package = "QurvE"), 24 | csvsep = "\t", 25 | csvsep.fl = "\t") 26 | 27 | # Extract time and normalized fluorescence data for single sample 28 | time <- input$time[4,] 29 | data <- input$norm.fluorescence[4,-(1:3)] # Remove identifier columns 30 | 31 | # Perform linear fit 32 | TestFit <- flBootSpline(time = time, 33 | fl_data = data, 34 | ID = 'TestFit', 35 | control = fl.control(fit.opt = 's', x_type = 'time', 36 | nboot.fl = 50)) 37 | 38 | summary(TestFit) 39 | } 40 | -------------------------------------------------------------------------------- /man/summary.flFitLinear.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/fluorescence_summaries.R 3 | \name{summary.flFitLinear} 4 | \alias{summary.flFitLinear} 5 | \title{Generic summary function for flFitLinear objects} 6 | \usage{ 7 | \method{summary}{flFitLinear}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{flFitLinear}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with parameters extracted from a linear fit. 16 | } 17 | \description{ 18 | Generic summary function for flFitLinear objects 19 | } 20 | \examples{ 21 | # load example dataset 22 | input <- read_data(data.growth = system.file("lac_promoters_growth.txt", package = "QurvE"), 23 | data.fl = system.file("lac_promoters_fluorescence.txt", package = "QurvE"), 24 | csvsep = "\t", 25 | csvsep.fl = "\t") 26 | 27 | # Extract time and normalized fluorescence data for single sample 28 | time <- input$time[4,] 29 | data <- input$norm.fluorescence[4,-(1:3)] # Remove identifier columns 30 | 31 | # Perform linear fit 32 | TestFit <- flFitLinear(time = time, 33 | fl_data = data, 34 | ID = 'TestFit', 35 | control = fl.control(fit.opt = 'l', x_type = 'time', 36 | lin.R2 = 0.95, lin.RSD = 0.1, 37 | lin.h = 20)) 38 | 39 | summary(TestFit) 40 | } 41 | -------------------------------------------------------------------------------- /man/inflect.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \name{inflect} 4 | \alias{inflect} 5 | \title{Find indices of maxima an minima in a data series} 6 | \usage{ 7 | inflect(x, threshold = 1) 8 | } 9 | \arguments{ 10 | \item{x}{vector of values with minima and maxima} 11 | 12 | \item{threshold}{Threshold to consider minima or maxima} 13 | } 14 | \value{ 15 | a list with 1. a vector of minima and 2. a vector of maxima. 16 | } 17 | \description{ 18 | Find indices of maxima an minima in a data series 19 | } 20 | \examples{ 21 | # Pick a desired threshold to plot up to 22 | n <- 3 23 | # Generate Data 24 | randomwalk <- 100 + cumsum(rnorm(50, 0.2, 1)) # climbs upwards most of the time 25 | bottoms <- lapply(1:n, function(x) inflect(randomwalk, threshold = x)$minima) 26 | tops <- lapply(1:n, function(x) inflect(randomwalk, threshold = x)$maxima) 27 | # Color functions 28 | cf.1 <- grDevices::colorRampPalette(c('pink','red')) 29 | cf.2 <- grDevices::colorRampPalette(c('cyan','blue')) 30 | plot(randomwalk, type = 'l', main = 'Minima & Maxima\nVariable Thresholds') 31 | for(i in 1:n){ 32 | points(bottoms[[i]], randomwalk[bottoms[[i]]], pch = 16, col = cf.1(n)[i], cex = i/1.5) 33 | } 34 | for(i in 1:n){ 35 | points(tops[[i]], randomwalk[tops[[i]]], pch = 16, col = cf.2(n)[i], cex = i/1.5) 36 | } 37 | legend('topleft', legend = c('Minima',1:n,'Maxima',1:n), 38 | pch = rep(c(NA, rep(16,n)), 2), col = c(1, cf.1(n),1, cf.2(n)), 39 | pt.cex = c(rep(c(1, c(1:n) / 1.5), 2)), cex = .75, ncol = 2) 40 | 41 | } 42 | \author{ 43 | Evan Friedland 44 | } 45 | -------------------------------------------------------------------------------- /man/summary.drFit.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_summaries.R 3 | \name{summary.drFit} 4 | \alias{summary.drFit} 5 | \title{Generic summary function for drFit objects} 6 | \usage{ 7 | \method{summary}{drFit}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{drFit}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with parameters for all samples extracted from the dose-response analysis. 16 | } 17 | \description{ 18 | Generic summary function for drFit objects 19 | } 20 | \examples{ 21 | \donttest{ 22 | # Create random growth data set 23 | rnd.data1 <- rdm.data(d = 35, mu = 0.8, A = 5, label = 'Test1') 24 | rnd.data2 <- rdm.data(d = 35, mu = 0.6, A = 4.5, label = 'Test2') 25 | 26 | rnd.data <- list() 27 | rnd.data[['time']] <- rbind(rnd.data1$time, rnd.data2$time) 28 | rnd.data[['data']] <- rbind(rnd.data1$data, rnd.data2$data) 29 | 30 | # Run growth curve analysis workflow 31 | gcFit <- growth.gcFit(time = rnd.data$time, 32 | data = rnd.data$data, 33 | parallelize = FALSE, 34 | control = growth.control(fit.opt = 's', 35 | suppress.messages = TRUE)) 36 | 37 | # Perform dose-response analysis 38 | drFit <- growth.drFit(gcTable = gcFit$gcTable, 39 | control = growth.control(dr.parameter = 'mu.spline')) 40 | 41 | # Inspect results 42 | summary(drFit) 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /man/summary.drFitfl.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/fluorescence_summaries.R 3 | \name{summary.drFitfl} 4 | \alias{summary.drFitfl} 5 | \title{Generic summary function for drFitfl objects} 6 | \usage{ 7 | \method{summary}{drFitfl}(object, ...) 8 | } 9 | \arguments{ 10 | \item{object}{object of class \code{drFitfl}} 11 | 12 | \item{...}{Additional arguments. This has currently no effect and is only meant to fulfill the requirements of a generic function.} 13 | } 14 | \value{ 15 | A dataframe with parameters for all samples extracted from a dose-response analysis. 16 | } 17 | \description{ 18 | Generic summary function for drFitfl objects 19 | } 20 | \examples{ 21 | # load example dataset 22 | input <- read_data(data.growth = system.file("lac_promoters_growth.txt", package = "QurvE"), 23 | data.fl = system.file("lac_promoters_fluorescence.txt", package = "QurvE"), 24 | csvsep = "\t", 25 | csvsep.fl = "\t") 26 | 27 | # Define fit controls 28 | control <- fl.control(fit.opt = 's', 29 | x_type = 'time', norm_fl = TRUE, 30 | dr.parameter = 'max_slope.spline', 31 | dr.method = 'model', 32 | suppress.messages = TRUE) 33 | 34 | # Run curve fitting workflow 35 | res <- flFit(fl_data = input$norm.fluorescence, 36 | time = input$time, 37 | parallelize = FALSE, 38 | control = control) 39 | 40 | # Perform dose-response analysis with biosensor model 41 | drFitfl <- fl.drFit(flTable = res$flTable, control = control) 42 | 43 | summary(drFitfl) 44 | 45 | } 46 | -------------------------------------------------------------------------------- /man/table_group_fluorescence_spline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/group_tables.R 3 | \name{table_group_fluorescence_spline} 4 | \alias{table_group_fluorescence_spline} 5 | \title{Generate a grouped results table for spline fits with average and standard deviations} 6 | \usage{ 7 | table_group_fluorescence_spline(flTable, html = FALSE) 8 | } 9 | \arguments{ 10 | \item{flTable}{An object of class \code{flTable}} 11 | 12 | \item{html}{(Logical) Should column headers contain html formatting?} 13 | } 14 | \value{ 15 | A data frame with grouped spline fit results. Empty cells indicate that no reliable fit could be determined. 16 | } 17 | \description{ 18 | Generate a grouped results table for spline fits with average and standard deviations 19 | } 20 | \examples{ 21 | # load example dataset 22 | input <- read_data(data.growth = system.file("lac_promoters_growth.txt", package = "QurvE"), 23 | data.fl = system.file("lac_promoters_fluorescence.txt", package = "QurvE"), 24 | csvsep = "\t", 25 | csvsep.fl = "\t") 26 | 27 | # Run workflow 28 | res <- fl.workflow(grodata = input, ec50 = FALSE, fit.opt = "s", 29 | x_type = "time", norm_fl = TRUE, 30 | dr.parameter = "max_slope.spline", 31 | suppress.messages = TRUE, 32 | parallelize = FALSE) 33 | 34 | table_group_fluorescence_spline(res$flFit$flTable) 35 | 36 | # with HTML formatting 37 | DT::datatable(table_group_fluorescence_spline(res$flFit$flTable, html = TRUE), 38 | escape = FALSE) # Do not escape HTML entities 39 | 40 | } 41 | -------------------------------------------------------------------------------- /docs/reference/libs/datatables-css-0.0.0/datatables-crosstalk.css: -------------------------------------------------------------------------------- 1 | .dt-crosstalk-fade { 2 | opacity: 0.2; 3 | } 4 | 5 | html body div.DTS div.dataTables_scrollBody { 6 | background: none; 7 | } 8 | 9 | 10 | /* 11 | Fix https://github.com/rstudio/DT/issues/563 12 | If the `table.display` is set to "block" (e.g., pkgdown), the browser will display 13 | datatable objects strangely. The search panel and the page buttons will still be 14 | in full-width but the table body will be "compact" and shorter. 15 | In therory, having this attributes will affect `dom="t"` 16 | with `display: block` users. But in reality, there should be no one. 17 | We may remove the below lines in the future if the upstream agree to have this there. 18 | See https://github.com/DataTables/DataTablesSrc/issues/160 19 | */ 20 | 21 | table.dataTable { 22 | display: table; 23 | } 24 | 25 | 26 | /* 27 | When DTOutput(fill = TRUE), it receives a .html-fill-item class (via htmltools::bindFillRole()), which effectively amounts to `flex: 1 1 auto`. That's mostly fine, but the case where `fillContainer=TRUE`+`height:auto`+`flex-basis:auto` and the container (e.g., a bslib::card()) doesn't have a defined height is a bit problematic since the table wants to fit the parent but the parent wants to fit the table, which results pretty small table height (maybe because there is a minimum height somewhere?). It seems better in this case to impose a 400px height default for the table, which we can do by setting `flex-basis` to 400px (the table is still allowed to grow/shrink when the container has an opinionated height). 28 | */ 29 | 30 | .html-fill-container > .html-fill-item.datatables { 31 | flex-basis: 400px; 32 | } 33 | -------------------------------------------------------------------------------- /man/buildTooltipOrPopoverOptionsList.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/shiny_app_functions.R 3 | \name{buildTooltipOrPopoverOptionsList} 4 | \alias{buildTooltipOrPopoverOptionsList} 5 | \title{Custom tooltip function} 6 | \usage{ 7 | buildTooltipOrPopoverOptionsList(title, placement, trigger, options, content) 8 | } 9 | \arguments{ 10 | \item{title}{The text for the tooltip's title.} 11 | 12 | \item{placement}{Placement of the tooltip. One of 'top', 'bottom', 'left', or 'right'.} 13 | 14 | \item{trigger}{The events that trigger the tooltip. One or more of 'click', 'hover', 'focus', or 'manual'.} 15 | 16 | \item{options}{A list of additional options for the tooltip.} 17 | 18 | \item{content}{Optional HTML content for the tooltip.} 19 | } 20 | \value{ 21 | A list of tooltip options to be used in the Shiny application. 22 | } 23 | \description{ 24 | This function creates a custom tooltip for a given element in a Shiny application. 25 | The implementation is based on the shinyBS package. 26 | } 27 | \examples{ 28 | \dontrun{ 29 | tooltip_options <- custom_tooltip( 30 | title = "Sample tooltip", 31 | placement = "top", 32 | trigger = "hover", 33 | options = list(delay = 100), 34 | content = "This is a custom tooltip." 35 | ) 36 | 37 | # In a Shiny app 38 | # shiny::tags$span("Hover me!", `data-toggle` = "tooltip", 39 | `data-placement` = "top", `data-trigger` = "hover", 40 | `title` = "Hello, tooltip!") 41 | } 42 | } 43 | \seealso{ 44 | \url{https://CRAN.R-project.org/package=shinyBS} 45 | } 46 | \keyword{internal} 47 | \keyword{shiny_app} 48 | -------------------------------------------------------------------------------- /man/table_group_fluorescence_linear.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/group_tables.R 3 | \name{table_group_fluorescence_linear} 4 | \alias{table_group_fluorescence_linear} 5 | \title{Generate a grouped results table for linear fits with average and standard deviations} 6 | \usage{ 7 | table_group_fluorescence_linear(flTable, html = FALSE) 8 | } 9 | \arguments{ 10 | \item{flTable}{An object of class \code{flTable}} 11 | 12 | \item{html}{(Logical) Should column headers contain html formatting?} 13 | } 14 | \value{ 15 | A data frame with grouped linear fit results. Empty cells indicate that no reliable fit could be determined. 16 | } 17 | \description{ 18 | Generate a grouped results table for linear fits with average and standard deviations 19 | } 20 | \examples{ 21 | \donttest{ 22 | # load example dataset 23 | input <- read_data(data.growth = system.file("lac_promoters_growth.txt", package = "QurvE"), 24 | data.fl = system.file("lac_promoters_fluorescence.txt", package = "QurvE"), 25 | csvsep = "\t", 26 | csvsep.fl = "\t") 27 | 28 | # Run workflow 29 | res <- fl.workflow(grodata = input, ec50 = FALSE, fit.opt = "l", 30 | x_type = "time", norm_fl = TRUE, 31 | dr.parameter = "max_slope.spline", 32 | suppress.messages = TRUE, 33 | parallelize = FALSE) 34 | 35 | table_group_fluorescence_linear(res$flFit$flTable) 36 | 37 | # with HTML formatting 38 | DT::datatable(table_group_fluorescence_linear(res$flFit$flTable, html = TRUE), 39 | escape = FALSE) # Do not escape HTML entities 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /man/tidy_to_custom.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/data_parsers.R 3 | \name{tidy_to_custom} 4 | \alias{tidy_to_custom} 5 | \title{Convert a tidy data frame to a custom QurvE format} 6 | \usage{ 7 | tidy_to_custom(df, data.format = "col") 8 | } 9 | \arguments{ 10 | \item{df}{A data frame in tidy format, containing "Time", "Description", and either "Values" or "Value" columns. Optionally, meta information provided in columns "Replicate" and "Concentration" is used.} 11 | 12 | \item{data.format}{(Character string) \code{"col"} (the default) or \code{"row"}. Only relevant if data is not provided in "tidy" format but has been prepared into the custom QurvE data format.} 13 | } 14 | \value{ 15 | A data frame in the custom format (row format) used by QurvE. 16 | } 17 | \description{ 18 | This function converts a data frame in "tidy" format into the custom format used by QurvE (row format). 19 | The provided "tidy" data has columns for "Description", "Concentration", "Replicate", and "Values", with one 20 | row per time point and sample. Alternatively, the function converts data in custom QurvE column format into 21 | row format (if \code{data.format = "col"}). 22 | } 23 | \examples{ 24 | # Create a tidy data frame with two samples, five concentrations, three 25 | # replicates, and five time points 26 | samples <- c("Sample 1", "Sample 2") 27 | concentrations <- c(0.1, 0.5, 1, 2, 5) 28 | time_points <- c(1, 2, 3, 4, 5) 29 | n_replicates <- 3 30 | 31 | df <- expand.grid( 32 | Description = c("Sample 1", "Sample 2"), 33 | Concentration = c(0.1, 0.5, 1, 2, 5), 34 | Time = c(1, 2, 3, 4, 5), 35 | Replicate = 1:3) 36 | 37 | df$Value <- abs(rnorm(nrow(df))) 38 | 39 | df_formatted <- tidy_to_custom(df) 40 | 41 | } 42 | \keyword{internal} 43 | -------------------------------------------------------------------------------- /man/updateResistantPopover.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/shiny_app_functions.R 3 | \name{updateResistantPopover} 4 | \alias{updateResistantPopover} 5 | \title{Create an update-resistant popover for a Shiny element} 6 | \usage{ 7 | updateResistantPopover( 8 | id, 9 | title, 10 | content, 11 | placement = "bottom", 12 | trigger = "hover", 13 | options = NULL 14 | ) 15 | } 16 | \arguments{ 17 | \item{id}{The id of the Shiny element to which the popover is attached.} 18 | 19 | \item{title}{The title of the popover.} 20 | 21 | \item{content}{The content of the popover.} 22 | 23 | \item{placement}{The placement of the popover relative to the Shiny element (default: "bottom"). 24 | Possible values are "top", "bottom", "left", and "right".} 25 | 26 | \item{trigger}{The event that triggers the display of the popover (default: "hover"). 27 | Possible values are "hover", "focus", and "click".} 28 | 29 | \item{options}{A list of additional options for the popover.} 30 | } 31 | \value{ 32 | A Shiny HTML tag that contains the JavaScript code for creating the update-resistant popover. 33 | } 34 | \description{ 35 | This function creates a popover that is resistant to updates in the associated Shiny element. 36 | It adds an event listener to the specified element, which reinstalls the popover whenever a child 37 | of the element changes. 38 | } 39 | \examples{ 40 | \dontrun{ 41 | library(shiny) 42 | library(shinyBS) 43 | 44 | ui <- shinyUI(fluidPage( 45 | selectInput("Main2_1","Label","abc", selectize = TRUE, multiple = TRUE), 46 | updateResistantPopover("Main2_1", "Label", "content", placement = "right", trigger = "focus"), 47 | actionButton("destroy", "destroy!") 48 | )) 49 | 50 | server <- function(input, output, session){ 51 | observeEvent(input$destroy, { 52 | updateSelectInput(session, "Main2_1", choices="foo") 53 | }) 54 | } 55 | 56 | shinyApp(ui, server) 57 | } 58 | } 59 | \author{ 60 | K. Rohde (stack overflow) 61 | } 62 | \keyword{internal} 63 | \keyword{shiny_app} 64 | -------------------------------------------------------------------------------- /docs/reference/libs/crosstalk-1.2.0/scss/crosstalk.scss: -------------------------------------------------------------------------------- 1 | /* Adjust margins outwards, so column contents line up with the edges of the 2 | parent of container-fluid. */ 3 | .container-fluid.crosstalk-bscols { 4 | margin-left: -30px; 5 | margin-right: -30px; 6 | white-space: normal; 7 | } 8 | 9 | /* But don't adjust the margins outwards if we're directly under the body, 10 | i.e. we were the top-level of something at the console. */ 11 | body > .container-fluid.crosstalk-bscols { 12 | margin-left: auto; 13 | margin-right: auto; 14 | } 15 | 16 | .crosstalk-input-checkboxgroup .crosstalk-options-group .crosstalk-options-column { 17 | display: inline-block; 18 | padding-right: 12px; 19 | vertical-align: top; 20 | } 21 | 22 | @media only screen and (max-width:480px) { 23 | .crosstalk-input-checkboxgroup .crosstalk-options-group .crosstalk-options-column { 24 | display: block; 25 | padding-right: inherit; 26 | } 27 | } 28 | 29 | /* Relevant BS3 styles to make filter_checkbox() look reasonable without Bootstrap */ 30 | .crosstalk-input { 31 | margin-bottom: 15px; /* a la .form-group */ 32 | .control-label { 33 | margin-bottom: 0; 34 | vertical-align: middle; 35 | } 36 | input[type="checkbox"] { 37 | margin: 4px 0 0; 38 | margin-top: 1px; 39 | line-height: normal; 40 | } 41 | .checkbox { 42 | position: relative; 43 | display: block; 44 | margin-top: 10px; 45 | margin-bottom: 10px; 46 | } 47 | .checkbox > label{ 48 | padding-left: 20px; 49 | margin-bottom: 0; 50 | font-weight: 400; 51 | cursor: pointer; 52 | } 53 | .checkbox input[type="checkbox"], 54 | .checkbox-inline input[type="checkbox"] { 55 | position: absolute; 56 | margin-top: 2px; 57 | margin-left: -20px; 58 | } 59 | .checkbox + .checkbox { 60 | margin-top: -5px; 61 | } 62 | .checkbox-inline { 63 | position: relative; 64 | display: inline-block; 65 | padding-left: 20px; 66 | margin-bottom: 0; 67 | font-weight: 400; 68 | vertical-align: middle; 69 | cursor: pointer; 70 | } 71 | .checkbox-inline + .checkbox-inline { 72 | margin-top: 0; 73 | margin-left: 10px; 74 | } 75 | } 76 | -------------------------------------------------------------------------------- /docs/reference/libs/crosstalk-1.2.1/scss/crosstalk.scss: -------------------------------------------------------------------------------- 1 | /* Adjust margins outwards, so column contents line up with the edges of the 2 | parent of container-fluid. */ 3 | .container-fluid.crosstalk-bscols { 4 | margin-left: -30px; 5 | margin-right: -30px; 6 | white-space: normal; 7 | } 8 | 9 | /* But don't adjust the margins outwards if we're directly under the body, 10 | i.e. we were the top-level of something at the console. */ 11 | body > .container-fluid.crosstalk-bscols { 12 | margin-left: auto; 13 | margin-right: auto; 14 | } 15 | 16 | .crosstalk-input-checkboxgroup .crosstalk-options-group .crosstalk-options-column { 17 | display: inline-block; 18 | padding-right: 12px; 19 | vertical-align: top; 20 | } 21 | 22 | @media only screen and (max-width:480px) { 23 | .crosstalk-input-checkboxgroup .crosstalk-options-group .crosstalk-options-column { 24 | display: block; 25 | padding-right: inherit; 26 | } 27 | } 28 | 29 | /* Relevant BS3 styles to make filter_checkbox() look reasonable without Bootstrap */ 30 | .crosstalk-input { 31 | margin-bottom: 15px; /* a la .form-group */ 32 | .control-label { 33 | margin-bottom: 0; 34 | vertical-align: middle; 35 | } 36 | input[type="checkbox"] { 37 | margin: 4px 0 0; 38 | margin-top: 1px; 39 | line-height: normal; 40 | } 41 | .checkbox { 42 | position: relative; 43 | display: block; 44 | margin-top: 10px; 45 | margin-bottom: 10px; 46 | } 47 | .checkbox > label{ 48 | padding-left: 20px; 49 | margin-bottom: 0; 50 | font-weight: 400; 51 | cursor: pointer; 52 | } 53 | .checkbox input[type="checkbox"], 54 | .checkbox-inline input[type="checkbox"] { 55 | position: absolute; 56 | margin-top: 2px; 57 | margin-left: -20px; 58 | } 59 | .checkbox + .checkbox { 60 | margin-top: -5px; 61 | } 62 | .checkbox-inline { 63 | position: relative; 64 | display: inline-block; 65 | padding-left: 20px; 66 | margin-bottom: 0; 67 | font-weight: 400; 68 | vertical-align: middle; 69 | cursor: pointer; 70 | } 71 | .checkbox-inline + .checkbox-inline { 72 | margin-top: 0; 73 | margin-left: 10px; 74 | } 75 | } 76 | -------------------------------------------------------------------------------- /man/plot.drBootSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_plots.R 3 | \name{plot.drBootSpline} 4 | \alias{plot.drBootSpline} 5 | \title{Generic plot function for \code{gcBootSpline} objects.} 6 | \usage{ 7 | \method{plot}{drBootSpline}( 8 | x, 9 | pch = 19, 10 | colData = 1, 11 | colSpline = "black", 12 | cex.point = 1, 13 | cex.lab = 1.5, 14 | cex.axis = 1.3, 15 | lwd = 2, 16 | plot = TRUE, 17 | export = FALSE, 18 | height = 7, 19 | width = 9, 20 | out.dir = NULL, 21 | combine = FALSE, 22 | ... 23 | ) 24 | } 25 | \arguments{ 26 | \item{x}{A \code{drBootSpline} object created with \code{\link{growth.drBootSpline}} or stored within a \code{grofit} or \code{drFit} object created with \code{\link{growth.workflow}} or \code{\link{growth.drFit}}, respectively.} 27 | 28 | \item{pch}{(Numeric) Shape of the raw data symbols.} 29 | 30 | \item{colData}{(Numeric or Character) Color used to plot the raw data.} 31 | 32 | \item{colSpline}{(Numeric or Character) Color used to plot the splines.} 33 | 34 | \item{cex.point}{(Numeric) Size of the raw data points.} 35 | 36 | \item{cex.lab}{(Numeric) Font size of axis titles.} 37 | 38 | \item{cex.axis}{(Numeric) Font size of axis annotations.} 39 | 40 | \item{lwd}{(Numeric) Spline line width.} 41 | 42 | \item{plot}{(Logical) Show the generated plot in the \code{Plots} pane (\code{TRUE}) or not (\code{FALSE}).} 43 | 44 | \item{export}{(Logical) Export the generated plot as PDF and PNG files (\code{TRUE}) or not (\code{FALSE}).} 45 | 46 | \item{height}{(Numeric) Height of the exported image in inches.} 47 | 48 | \item{width}{(Numeric) Width of the exported image in inches.} 49 | 50 | \item{out.dir}{(Character) Name or path to a folder in which the exported files are stored. If \code{NULL}, a "Plots" folder is created in the current working directory to store the files in.} 51 | 52 | \item{combine}{(Logical) Indicate whether both dose-response curves and parameter plots shall be shown within the same window.} 53 | 54 | \item{...}{Further arguments to refine the generated base R plot.} 55 | } 56 | \value{ 57 | A plot with the all dose-response spline fits from the bootstrapping operation. 58 | } 59 | \description{ 60 | Generic plot function for \code{gcBootSpline} objects. 61 | } 62 | \examples{ 63 | conc <- c(0, rev(unlist(lapply(1:18, function(x) 10*(2/3)^x))),10) 64 | response <- c(1/(1+exp(-0.7*(4-conc[-20])))+stats::rnorm(19)/50, 0) 65 | 66 | TestRun <- growth.drBootSpline(conc, response, drID = "test", 67 | control = growth.control(log.x.dr = TRUE, smooth.dr = 0.8, nboot.dr = 50)) 68 | 69 | print(summary(TestRun)) 70 | plot(TestRun, combine = TRUE) 71 | 72 | } 73 | -------------------------------------------------------------------------------- /man/growth.drBootSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dose-response-analysis.R 3 | \name{growth.drBootSpline} 4 | \alias{growth.drBootSpline} 5 | \title{Perform a smooth spline fit on response vs. concentration data of a single sample} 6 | \usage{ 7 | growth.drBootSpline(conc, test, drID = "undefined", control = growth.control()) 8 | } 9 | \arguments{ 10 | \item{conc}{Vector of concentration values.} 11 | 12 | \item{test}{Vector of response parameter values of the same length as \code{conc}.} 13 | 14 | \item{drID}{(Character) The name of the analyzed sample.} 15 | 16 | \item{control}{A \code{grofit.control} object created with \code{\link{growth.control}}, defining relevant fitting options.} 17 | } 18 | \value{ 19 | An object of class \code{drBootSpline} containing a distribution of growth parameters and 20 | a \code{drFitSpline} object for each bootstrap sample. Use \code{\link{plot.drBootSpline}} 21 | to visualize all bootstrapping splines as well as the distribution of EC50. 22 | \item{raw.conc}{Raw data provided to the function as \code{conc}.} 23 | \item{raw.test}{Raw data for the response parameter provided to the function as \code{test}.} 24 | \item{drID}{(Character) Identifies the tested condition.} 25 | \item{boot.conc}{Table of concentration values per column, resulting from each spline fit of the bootstrap.} 26 | \item{boot.test}{Table of response values per column, resulting from each spline fit of the bootstrap.} 27 | \item{boot.drSpline}{List containing all \code{drFitSpline} objects generated by the call of \code{\link{growth.drFitSpline}}.} 28 | \item{ec50.boot}{Vector of estimated EC50 values from each bootstrap entry.} 29 | \item{ec50y.boot}{Vector of estimated response at EC50 values from each bootstrap entry.} 30 | \item{BootFlag}{(Logical) Indicates the success of the bootstrapping operation.} 31 | \item{control}{Object of class \code{grofit.control} containing list of options passed to the function as \code{control}.} 32 | } 33 | \description{ 34 | \code{growth.drBootSpline} resamples the values in a dataset with replacement and performs a spline fit for each bootstrap sample to determine the EC50. 35 | } 36 | \examples{ 37 | conc <- c(0, rev(unlist(lapply(1:18, function(x) 10*(2/3)^x))),10) 38 | response <- c(1/(1+exp(-0.7*(4-conc[-20])))+rnorm(19)/50, 0) 39 | 40 | TestRun <- growth.drBootSpline(conc, response, drID = 'test', 41 | control = growth.control(log.x.dr = TRUE, smooth.dr = 0.8, 42 | nboot.dr = 50)) 43 | 44 | print(summary(TestRun)) 45 | plot(TestRun, combine = TRUE) 46 | 47 | } 48 | \references{ 49 | Matthias Kahm, Guido Hasenbrink, Hella Lichtenberg-Frate, Jost Ludwig, Maik Kschischo (2010). \emph{grofit: Fitting Biological Growth Curves with R}. Journal of Statistical Software, 33(7), 1-21. DOI: 10.18637/jss.v033.i07 50 | } 51 | \seealso{ 52 | Other dose-response analysis functions: 53 | \code{\link{flFit}()}, 54 | \code{\link{growth.drFitSpline}()}, 55 | \code{\link{growth.gcFit}()}, 56 | \code{\link{growth.workflow}()} 57 | } 58 | \concept{dose-response analysis functions} 59 | -------------------------------------------------------------------------------- /man/QurvE-package.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/QurvE-package.R 3 | \docType{package} 4 | \name{QurvE-package} 5 | \alias{QurvE} 6 | \alias{QurvE-package} 7 | \title{QurvE: Robust and User-Friendly Analysis of Growth and Fluorescence Curves} 8 | \description{ 9 | High-throughput analysis of growth curves and fluorescence data using three methods: linear regression, growth model fitting, and smooth spline fit. Analysis of dose-response relationships via smoothing splines or dose-response models. Complete data analysis workflows can be executed in a single step via user-friendly wrapper functions. The results of these workflows are summarized in detailed reports as well as intuitively navigable 'R' data containers. A 'shiny' application provides access to all features without requiring any programming knowledge. The package is described in further detail in Wirth et al. (2023) \doi{10.1038/s41596-023-00850-7}. 10 | } 11 | \seealso{ 12 | Useful links: 13 | \itemize{ 14 | \item \url{https://github.com/NicWir/QurvE} 15 | \item \url{https://nicwir.github.io/QurvE/} 16 | \item Report bugs at \url{https://github.com/NicWir/QurvE/issues} 17 | } 18 | 19 | } 20 | \author{ 21 | \strong{Maintainer}: Nicolas T. Wirth \email{mail.nicowirth@gmail.com} (\href{https://orcid.org/0000-0003-0799-1321}{ORCID}) [copyright holder] 22 | 23 | Authors: 24 | \itemize{ 25 | \item Jonathan Funk \email{funk.jonathan21@gmail.com} (Co-developer of shiny app.) 26 | } 27 | 28 | Other contributors: 29 | \itemize{ 30 | \item Matthias Kahm (Author of 'grofit' package, whose general data structure was adopted for QurvE.) [contributor] 31 | \item Maik Kschischo (Author of 'grofit' package, whose general data structure was adopted for QurvE.) [contributor] 32 | \item Thomas Petzoldt \email{thomas.petzoldt@tu-dresden.de} (\href{https://orcid.org/0000-0002-4951-6468}{ORCID}) (Creator of the package 'growthrates', whose function for calculating linear regressions served as a template in QurvE.) [contributor] 33 | \item Andrew Stein \email{andy.stein@gmail.com} (Creator of 'xgxr' package from which QurvE adopted code to plot axis ticks on log10 scale.) [contributor] 34 | \item Michael W. Kearney \email{kearneymw@missouri.edu} (Creator of 'tfse' package from which QurvE adopted the match_arg function.) [contributor] 35 | \item Santiago I. Hurtado \email{santih@carina.fcaglp.unlp.edu.ar} (Creator of 'RobustLinearReg' package from which QurvE adopted the Theil Sehn Regression method.) [contributor] 36 | \item Mark Heckmann (Creator of the 'zipFastener' function; source: https://ryouready.wordpress.com/2009/03/27/r-zip-fastener-for-two-data-frames-combining-rows-or-columns-of-two-dataframes-in-an-alternating-manner/) [contributor] 37 | \item Nicholas Hamilton (Creator of the 'colFmt' function.) [contributor] 38 | \item Evan Friedland (Creator of the 'inflect' function.) [contributor] 39 | \item Heather Turner (Creator of the 'base_breaks' function.) [contributor] 40 | \item Georgi N. Boshnakov \email{georgi.boshnakov@manchester.ac.uk} (Creator of 'gbRd' package from which functions are used to display function help pages within the shiny app.) [contributor] 41 | } 42 | 43 | } 44 | \keyword{internal} 45 | -------------------------------------------------------------------------------- /man/fl.drFitModel.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dose-response-analysis.R 3 | \name{fl.drFitModel} 4 | \alias{fl.drFitModel} 5 | \title{Perform a biosensor model fit on response vs. concentration data of a single sample.} 6 | \usage{ 7 | fl.drFitModel(conc, test, drID = "undefined", control = fl.control()) 8 | } 9 | \arguments{ 10 | \item{conc}{Vector of concentration values.} 11 | 12 | \item{test}{Vector of response parameter values of the same length as \code{conc}.} 13 | 14 | \item{drID}{(Character) The name of the analyzed condition} 15 | 16 | \item{control}{A \code{fl.control} object created with \code{\link{fl.control}}, defining relevant fitting options.} 17 | } 18 | \value{ 19 | A \code{drFitFLModel} object. 20 | \item{raw.conc}{Raw data provided to the function as \code{conc}.} 21 | \item{raw.test}{Raw data for the response parameter provided to the function as \code{test}.} 22 | \item{drID}{(Character) Identifies the tested condition} 23 | \item{fit.conc}{Fitted concentration values.} 24 | \item{fit.test}{Fitted response values.} 25 | \item{model}{\code{nls} object generated by the \code{nlsLM} function.} 26 | \item{parameters}{List of parameters estimated from dose response curve fit.} 27 | \itemize{ 28 | \item \code{yEC50}: Response value related to EC50. 29 | \item \code{y.min}: Minimum fluorescence ('leakiness', if lowest concentration is 0). 30 | \item \code{y.max}: Maximum fluorescence. 31 | \item \code{fc}: Fold change (\code{y.max} divided by \code{y.min}). 32 | \item \code{K}: Concentration at half-maximal response ('sensitivity'). 33 | \item \code{n}: Cooperativity. 34 | \item \code{yEC50.orig}: Response value for EC50 in original scale, if a transformation was applied. 35 | \item \code{K.orig}: K in original scale, if a transformation was applied. 36 | \item \code{test.nm}: Test identifier extracted from \code{test}. 37 | } 38 | \item{fitFlag}{(Logical) Indicates whether a spline could fitted successfully to data.} 39 | \item{reliable}{(Logical) Indicates whether the performed fit is reliable (to be set manually).} 40 | \item{control}{Object of class \code{fl.control} created with the call of \code{\link{fl.control}}.} 41 | Use \code{\link{plot.drFitModel}} to visualize the model fit. 42 | } 43 | \description{ 44 | \code{fl.drFitModel} fits the biosensor model proposed by Meyer et al. (2019) to the provided response (e.g., \code{max_slope.spline} vs. concentration data to determine the leakiness, sensitivity, induction fold-change, and cooperativity. 45 | } 46 | \examples{ 47 | # Create concentration values via a serial dilution 48 | conc <- c(0, rev(unlist(lapply(1:18, function(x) 10*(2/3)^x))),10) 49 | 50 | # Simulate response values via biosensor equation 51 | response <- biosensor.eq(conc, y.min = 110, y.max = 6000, K = 0.5, n = 2) + 52 | 0.01*6000*rnorm(10) 53 | 54 | # Perform fit 55 | TestRun <- fl.drFitModel(conc, response, drID = 'test', control = fl.control()) 56 | 57 | print(summary(TestRun)) 58 | plot(TestRun) 59 | } 60 | \references{ 61 | Meyer, A.J., Segall-Shapiro, T.H., Glassey, E. et al. \emph{Escherichia coli “Marionette” strains with 12 highly optimized small-molecule sensors.} Nat Chem Biol 15, 196–204 (2019). DOI: 10.1038/s41589-018-0168-3 62 | } 63 | -------------------------------------------------------------------------------- /man/growth.report.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/report_functions.R 3 | \name{growth.report} 4 | \alias{growth.report} 5 | \title{Create a PDF and HTML report with results from a growth curve analysis workflow} 6 | \usage{ 7 | growth.report( 8 | grofit, 9 | out.dir = tempdir(), 10 | out.nm = NULL, 11 | ec50 = FALSE, 12 | format = c("pdf", "html"), 13 | export = FALSE, 14 | parallelize = TRUE, 15 | ... 16 | ) 17 | } 18 | \arguments{ 19 | \item{grofit}{A \code{grofit} object created with \code{\link{growth.workflow}}.} 20 | 21 | \item{out.dir}{(Character) The path or name of the folder in which the report files are created. If \code{NULL}, the folder will be named with a combination of 'Report.growth_' and the current date and time.} 22 | 23 | \item{out.nm}{{Character or \code{NULL}} Define the name of the report files. If \code{NULL}, the files will be named with a combination of 'GrowthReport_' and the current date and time.} 24 | 25 | \item{ec50}{(Logical) Display results of dose-response analysis (\code{TRUE}) or not (\code{FALSE}).} 26 | 27 | \item{format}{(Character) Define the file format for the report, PDF (\code{'pdf'}) and/or HTML (\code{'html'}). Default: (\code{c('pdf', 'html')})} 28 | 29 | \item{export}{(Logical) Shall all plots generated in the report be exported as individual PDF and PNG files \code{TRUE} or not \code{FALSE}?} 30 | 31 | \item{parallelize}{(Logical) Create plots using all but one available processor cores (\code{TRUE}) or only a single core (\code{FALSE}).} 32 | 33 | \item{...}{Further arguments passed to create a report. Currently supported: 34 | \itemize{ 35 | \item \code{mean.grp}: Define groups to combine into common plots in the report based on sample identifiers. Partial matches with sample/group names are accepted. Can be \code{'all'}, a string vector, or a list of string vectors. Note: The maximum number of sample groups (with unique condition/concentration indicators) is 50. If you have more than 50 groups, option \code{'all'} will produce the error \code{! Insufficient values in manual scale. [Number] needed but only 50 provided}. 36 | \item \code{mean.conc}: Define concentrations to combine into common plots in the report. Can be a numeric vector, or a list of numeric vectors. 37 | }} 38 | } 39 | \value{ 40 | \code{NULL} 41 | } 42 | \description{ 43 | \code{growth.report} requires a \code{grofit} object and creates a report in PDF and HTML format that summarizes all results. 44 | } 45 | \details{ 46 | The template .Rmd file used within this function can be found within the QurvE package installation directory. 47 | } 48 | \examples{ 49 | \dontrun{ 50 | # Create random growth data set 51 | rnd.data <- rdm.data(d = 35, mu = 0.8, A = 5, label = 'Test1') 52 | 53 | 54 | # Run growth curve analysis workflow 55 | res <- growth.workflow(time = rnd.data$time, 56 | data = rnd.data$data, 57 | fit.opt = 's', 58 | ec50 = FALSE, 59 | export.res = FALSE, 60 | suppress.messages = TRUE, 61 | parallelize = FALSE) 62 | 63 | growth.report(res, out.dir = tempdir(), parallelize = FALSE) 64 | } 65 | } 66 | \concept{reports} 67 | -------------------------------------------------------------------------------- /.github/workflows/rhub.yaml: -------------------------------------------------------------------------------- 1 | # R-hub's generic GitHub Actions workflow file. It's canonical location is at 2 | # https://github.com/r-hub/actions/blob/v1/workflows/rhub.yaml 3 | # You can update this file to a newer version using the rhub2 package: 4 | # 5 | # rhub::rhub_setup() 6 | # 7 | # It is unlikely that you need to modify this file manually. 8 | 9 | name: R-hub 10 | run-name: "${{ github.event.inputs.id }}: ${{ github.event.inputs.name || format('Manually run by {0}', github.triggering_actor) }}" 11 | 12 | on: 13 | workflow_dispatch: 14 | inputs: 15 | config: 16 | description: 'A comma separated list of R-hub platforms to use.' 17 | type: string 18 | default: 'linux,windows,macos' 19 | name: 20 | description: 'Run name. You can leave this empty now.' 21 | type: string 22 | id: 23 | description: 'Unique ID. You can leave this empty now.' 24 | type: string 25 | 26 | jobs: 27 | 28 | setup: 29 | runs-on: ubuntu-latest 30 | outputs: 31 | containers: ${{ steps.rhub-setup.outputs.containers }} 32 | platforms: ${{ steps.rhub-setup.outputs.platforms }} 33 | 34 | steps: 35 | # NO NEED TO CHECKOUT HERE 36 | - uses: r-hub/actions/setup@v1 37 | with: 38 | config: ${{ github.event.inputs.config }} 39 | id: rhub-setup 40 | 41 | linux-containers: 42 | needs: setup 43 | if: ${{ needs.setup.outputs.containers != '[]' }} 44 | runs-on: ubuntu-latest 45 | name: ${{ matrix.config.label }} 46 | strategy: 47 | fail-fast: false 48 | matrix: 49 | config: ${{ fromJson(needs.setup.outputs.containers) }} 50 | container: 51 | image: ${{ matrix.config.container }} 52 | 53 | steps: 54 | - uses: r-hub/actions/checkout@v1 55 | - uses: r-hub/actions/platform-info@v1 56 | with: 57 | token: ${{ secrets.RHUB_TOKEN }} 58 | job-config: ${{ matrix.config.job-config }} 59 | - uses: r-hub/actions/setup-deps@v1 60 | with: 61 | token: ${{ secrets.RHUB_TOKEN }} 62 | job-config: ${{ matrix.config.job-config }} 63 | - uses: r-hub/actions/run-check@v1 64 | with: 65 | token: ${{ secrets.RHUB_TOKEN }} 66 | job-config: ${{ matrix.config.job-config }} 67 | 68 | other-platforms: 69 | needs: setup 70 | if: ${{ needs.setup.outputs.platforms != '[]' }} 71 | runs-on: ${{ matrix.config.os }} 72 | name: ${{ matrix.config.label }} 73 | strategy: 74 | fail-fast: false 75 | matrix: 76 | config: ${{ fromJson(needs.setup.outputs.platforms) }} 77 | 78 | steps: 79 | - uses: r-hub/actions/checkout@v1 80 | - uses: r-hub/actions/setup-r@v1 81 | with: 82 | job-config: ${{ matrix.config.job-config }} 83 | token: ${{ secrets.RHUB_TOKEN }} 84 | - uses: r-hub/actions/platform-info@v1 85 | with: 86 | token: ${{ secrets.RHUB_TOKEN }} 87 | job-config: ${{ matrix.config.job-config }} 88 | - uses: r-hub/actions/setup-deps@v1 89 | with: 90 | job-config: ${{ matrix.config.job-config }} 91 | token: ${{ secrets.RHUB_TOKEN }} 92 | - uses: r-hub/actions/run-check@v1 93 | with: 94 | job-config: ${{ matrix.config.job-config }} 95 | token: ${{ secrets.RHUB_TOKEN }} 96 | -------------------------------------------------------------------------------- /man/fl.report.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/report_functions.R 3 | \name{fl.report} 4 | \alias{fl.report} 5 | \title{Create a PDF and HTML report with results from a fluorescence analysis workflow} 6 | \usage{ 7 | fl.report( 8 | flFitRes, 9 | out.dir = tempdir(), 10 | out.nm = NULL, 11 | ec50 = FALSE, 12 | format = c("pdf", "html"), 13 | export = FALSE, 14 | parallelize = TRUE, 15 | ... 16 | ) 17 | } 18 | \arguments{ 19 | \item{flFitRes}{A \code{grofit} object created with \code{\link{fl.workflow}}.} 20 | 21 | \item{out.dir}{(Character) The path or name of the folder in which the report files are created. If \code{NULL}, the folder will be named with a combination of 'Report.fluorescence_' and the current date and time.} 22 | 23 | \item{out.nm}{{Character or \code{NULL}} Define the name of the report files. If \code{NULL}, the files will be named with a combination of 'FluorescenceReport_' and the current date and time.} 24 | 25 | \item{ec50}{(Logical) Display results of dose-response analysis (\code{TRUE}) or not (\code{FALSE}).} 26 | 27 | \item{format}{(Character) Define the file format for the report, PDF (\code{'pdf'}) and/or HTML (\code{'html'}). Default: (\code{c('pdf', 'html')})} 28 | 29 | \item{export}{(Logical) Shall all plots generated in the report be exported as individual PDF and PNG files \code{TRUE} or not \code{FALSE}?} 30 | 31 | \item{parallelize}{(Logical) Create plots using all but one available processor cores (\code{TRUE}) or only a single core (\code{FALSE}).} 32 | 33 | \item{...}{Further arguments passed to create a report. Currently supported: 34 | \itemize{ 35 | \item \code{mean.grp}: Define groups to combine into common plots in the report based on sample identifiers. Partial matches with sample/group names are accepted. Can be \code{'all'}, a vector of strings, or a list of string vectors. Note: The maximum number of sample groups (with unique condition/concentration indicators) is 50. If you have more than 50 groups, option \code{'all'} will produce the error \code{! Insufficient values in manual scale. [Number] needed but only 50 provided}. 36 | \item \code{mean.conc}: Define concentrations to combine into common plots in the report. Can be a numeric vector, or a list of numeric vectors. 37 | }} 38 | } 39 | \value{ 40 | \code{NULL} 41 | } 42 | \description{ 43 | \code{fl.report} requires a \code{flFitRes} object and creates a report in PDF and HTML format that summarizes all results obtained. 44 | } 45 | \details{ 46 | The template .Rmd file used within this function can be found within the QurvE package installation directory. 47 | } 48 | \examples{ 49 | # load example dataset 50 | \dontrun{ 51 | input <- read_data(data.growth = system.file("lac_promoters_growth.txt", package = "QurvE"), 52 | data.fl = system.file("lac_promoters_fluorescence.txt", package = "QurvE"), 53 | csvsep = "\t", 54 | csvsep.fl = "\t") 55 | 56 | # Run workflow 57 | res <- fl.workflow(grodata = input, ec50 = FALSE, fit.opt = 's', 58 | x_type = 'time', norm_fl = TRUE, 59 | dr.parameter = 'max_slope.spline', 60 | suppress.messages = TRUE, 61 | parallelize = FALSE) 62 | 63 | fl.report(res, out.dir = tempdir(), parallelize = FALSE) 64 | } 65 | } 66 | -------------------------------------------------------------------------------- /man/flBootSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/nonparametric_fits.R 3 | \name{flBootSpline} 4 | \alias{flBootSpline} 5 | \title{flBootSpline: Function to generate a bootstrap} 6 | \usage{ 7 | flBootSpline( 8 | time = NULL, 9 | growth = NULL, 10 | fl_data, 11 | ID = "undefined", 12 | control = fl.control() 13 | ) 14 | } 15 | \arguments{ 16 | \item{time}{Vector of the independent variable: time (if \code{x_type = 'time'} in \code{fl.control} object.} 17 | 18 | \item{growth}{Vector of the independent variable: growth (if \code{x_type = 'growth'} in \code{fl.control} object.} 19 | 20 | \item{fl_data}{Vector of dependent variable: fluorescence.} 21 | 22 | \item{ID}{(Character) The name of the analyzed sample.} 23 | 24 | \item{control}{A \code{fl.control} object created with \code{\link{fl.control}}, defining relevant fitting options.} 25 | } 26 | \value{ 27 | A \code{gcBootSpline} object containing a distribution of fluorescence parameters and 28 | a \code{flFitSpline} object for each bootstrap sample. Use \code{\link{plot.gcBootSpline}} 29 | to visualize all bootstrapping splines as well as the distribution of 30 | physiological parameters. 31 | \item{raw.x}{Raw time values provided to the function as \code{time}.} 32 | \item{raw.fl}{Raw growth data provided to the function as \code{data}.} 33 | \item{ID}{(Character) Identifies the tested sample.} 34 | \item{boot.x}{Table of time values per column, resulting from each spline fit of the bootstrap.} 35 | \item{boot.fl}{Table of growth values per column, resulting from each spline fit of the bootstrap.} 36 | \item{boot.flSpline}{List of \code{flFitSpline} object, created by \code{\link{flFitSpline}} for each resample of the bootstrap.} 37 | \item{lambda}{Vector of estimated lambda (lag time) values from each bootstrap entry.} 38 | \item{max_slope}{Vector of estimated max_slope (maximum slope) values from each bootstrap entry.} 39 | \item{A}{Vector of estimated A (maximum fluorescence) values from each bootstrap entry.} 40 | \item{integral}{Vector of estimated integral values from each bootstrap entry.} 41 | \item{bootFlag}{(Logical) Indicates the success of the bootstrapping operation.} 42 | \item{control}{Object of class \code{fl.control} containing list of options passed to the function as \code{control}.} 43 | } 44 | \description{ 45 | \code{fl.gcBootSpline} resamples the fluorescence-'x' value pairs in a dataset with replacement and performs a spline fit for each bootstrap sample. 46 | } 47 | \examples{ 48 | # load example dataset 49 | input <- read_data(data.growth = system.file("lac_promoters_growth.txt", package = "QurvE"), 50 | data.fl = system.file("lac_promoters_fluorescence.txt", package = "QurvE"), 51 | csvsep = "\t", 52 | csvsep.fl = "\t") 53 | 54 | # Extract time and normalized fluorescence data for single sample 55 | time <- input$time[4,] 56 | data <- input$norm.fluorescence[4,-(1:3)] # Remove identifier columns 57 | 58 | # Perform linear fit 59 | TestFit <- flBootSpline(time = time, 60 | fl_data = data, 61 | ID = 'TestFit', 62 | control = fl.control(fit.opt = 's', x_type = 'time', 63 | nboot.fl = 50)) 64 | 65 | plot(TestFit, combine = TRUE, lwd = 0.5) 66 | } 67 | \seealso{ 68 | Other fluorescence fitting functions: 69 | \code{\link{flFit}()}, 70 | \code{\link{flFitSpline}()} 71 | } 72 | \concept{fluorescence fitting functions} 73 | -------------------------------------------------------------------------------- /man/rdm.data.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \name{rdm.data} 4 | \alias{rdm.data} 5 | \title{The function calls the \code{baranyi} function to generate curves between time zero and \code{t} and adds some random noise to the x- and y-axes. The three growth parameters given as input values will be slightly changed to produce different growth curves. The resulting datasets can be used to test the \code{\link{growth.workflow}} function.} 6 | \usage{ 7 | rdm.data(d, y0 = 0.05, tmax = 24, mu = 0.6, lambda = 5, A = 3, label = "Test1") 8 | } 9 | \arguments{ 10 | \item{d}{Numeric value, number of data sets. If \code{d} is a vector, only the first entry is used.} 11 | 12 | \item{y0}{Numeric value, start growth. If \code{t} is a vector, only the first entry is used.} 13 | 14 | \item{tmax}{Numeric value, number of time points per data set. If \code{t} is a vector, only the first entry is used.} 15 | 16 | \item{mu}{Numeric value, maximum slope. If \code{mu} is a vector, only the first entry is used.} 17 | 18 | \item{lambda}{Numeric value, lag-phase. If \code{lambda} is a vector, only the first entry is used.} 19 | 20 | \item{A}{Numeric value, maximum growth. If \code{A} is a vector, only the first entry is used.} 21 | 22 | \item{label}{Character string, condition label If \code{label} is a vector, only the first entry is used.} 23 | } 24 | \value{ 25 | A list containing simulated data for three tests (e.g., 'organisms'): 26 | \item{time}{numeric matrix of size \code{d}x\code{t}, each row represent the time points for which growth data is simulated and stored in each row of \code{data}.} 27 | \item{data}{data.frame of size \code{d}x(3+\code{t}), 1. column, character as an experiment identifier; 2. column: Replicate number; 3. column: concentration of substrate of a compound under which the experiment is obtained; 4.-(3+t). column: growth data corresponding to the time points in \code{time}.} 28 | } 29 | \description{ 30 | The function calls the \code{baranyi} function to generate curves between time zero and \code{t} and adds some random noise to the x- and y-axes. The three growth parameters given as input values will be slightly changed to produce different growth curves. The resulting datasets can be used to test the \code{\link{growth.workflow}} function. 31 | } 32 | \examples{ 33 | # Create random growth data set 34 | rnd.data1 <- rdm.data(d = 35, mu = 0.8, A = 5, label = 'Test1') 35 | rnd.data2 <- rdm.data(d = 35, mu = 0.6, A = 4.5, label = 'Test2') 36 | 37 | rnd.data <- list() 38 | rnd.data[['time']] <- rbind(rnd.data1$time, rnd.data2$time) 39 | rnd.data[['data']] <- rbind(rnd.data1$data, rnd.data2$data) 40 | 41 | # Run growth curve analysis workflow 42 | gcFit <- growth.gcFit(time = rnd.data$time, 43 | data = rnd.data$data, 44 | parallelize = FALSE, 45 | control = growth.control(fit.opt = 's', 46 | suppress.messages = TRUE)) 47 | 48 | \donttest{ 49 | # Perform dose-response analysis 50 | drFit <- growth.drFit(gcTable = gcFit$gcTable, 51 | control = growth.control(dr.parameter = 'mu.spline')) 52 | 53 | # Inspect results 54 | summary(drFit) 55 | plot(drFit) 56 | } 57 | 58 | } 59 | \references{ 60 | Matthias Kahm, Guido Hasenbrink, Hella Lichtenberg-Frate, Jost Ludwig, Maik Kschischo (2010). \emph{grofit: Fitting Biological Growth Curves with R}. Journal of Statistical Software, 33(7), 1-21. DOI: 10.18637/jss.v033.i07 61 | } 62 | -------------------------------------------------------------------------------- /inst/shiny_manuals/rdm.data.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \name{rdm.data} 4 | \alias{rdm.data} 5 | \title{The function calls the \code{baranyi} function to generate curves between time zero and \code{t} and adds some random noise to the x- and y-axes. The three growth parameters given as input values will be slightly changed to produce different growth curves. The resulting datasets can be used to test the \code{\link{growth.workflow}} function.} 6 | \usage{ 7 | rdm.data(d, y0 = 0.05, tmax = 24, mu = 0.6, lambda = 5, A = 3, label = "Test1") 8 | } 9 | \arguments{ 10 | \item{d}{Numeric value, number of data sets. If \code{d} is a vector, only the first entry is used.} 11 | 12 | \item{y0}{Numeric value, start growth. If \code{t} is a vector, only the first entry is used.} 13 | 14 | \item{tmax}{Numeric value, number of time points per data set. If \code{t} is a vector, only the first entry is used.} 15 | 16 | \item{mu}{Numeric value, maximum slope. If \code{mu} is a vector, only the first entry is used.} 17 | 18 | \item{lambda}{Numeric value, lag-phase. If \code{lambda} is a vector, only the first entry is used.} 19 | 20 | \item{A}{Numeric value, maximum growth. If \code{A} is a vector, only the first entry is used.} 21 | 22 | \item{label}{Character string, condition label If \code{label} is a vector, only the first entry is used.} 23 | } 24 | \value{ 25 | A list containing simulated data for three tests (e.g., 'organisms'): 26 | \item{time}{numeric matrix of size \code{d}x\code{t}, each row represent the time points for which growth data is simulated and stored in each row of \code{data}.} 27 | \item{data}{data.frame of size \code{d}x(3+\code{t}), 1. column, character as an experiment identifier; 2. column: Replicate number; 3. column: concentration of substrate of a compound under which the experiment is obtained; 4.-(3+t). column: growth data corresponding to the time points in \code{time}.} 28 | } 29 | \description{ 30 | The function calls the \code{baranyi} function to generate curves between time zero and \code{t} and adds some random noise to the x- and y-axes. The three growth parameters given as input values will be slightly changed to produce different growth curves. The resulting datasets can be used to test the \code{\link{growth.workflow}} function. 31 | } 32 | \examples{ 33 | # Create random growth data set 34 | rnd.data1 <- rdm.data(d = 35, mu = 0.8, A = 5, label = 'Test1') 35 | rnd.data2 <- rdm.data(d = 35, mu = 0.6, A = 4.5, label = 'Test2') 36 | 37 | rnd.data <- list() 38 | rnd.data[['time']] <- rbind(rnd.data1$time, rnd.data2$time) 39 | rnd.data[['data']] <- rbind(rnd.data1$data, rnd.data2$data) 40 | 41 | # Run growth curve analysis workflow 42 | gcFit <- growth.gcFit(time = rnd.data$time, 43 | data = rnd.data$data, 44 | parallelize = FALSE, 45 | control = growth.control(fit.opt = 's', 46 | suppress.messages = TRUE)) 47 | 48 | \donttest{ 49 | # Perform dose-response analysis 50 | drFit <- growth.drFit(gcTable = gcFit$gcTable, 51 | control = growth.control(dr.parameter = 'mu.spline')) 52 | 53 | # Inspect results 54 | summary(drFit) 55 | plot(drFit) 56 | } 57 | 58 | } 59 | \references{ 60 | Matthias Kahm, Guido Hasenbrink, Hella Lichtenberg-Frate, Jost Ludwig, Maik Kschischo (2010). \emph{grofit: Fitting Biological Growth Curves with R}. Journal of Statistical Software, 33(7), 1-21. DOI: 10.18637/jss.v033.i07 61 | } 62 | -------------------------------------------------------------------------------- /man/growth.gcBootSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/nonparametric_fits.R 3 | \name{growth.gcBootSpline} 4 | \alias{growth.gcBootSpline} 5 | \title{Perform a bootstrap on growth vs. time data followed by spline fits for each resample} 6 | \usage{ 7 | growth.gcBootSpline(time, data, gcID = "undefined", control = growth.control()) 8 | } 9 | \arguments{ 10 | \item{time}{Vector of the independent variable (usually: time).} 11 | 12 | \item{data}{Vector of dependent variable (usually: growth values).} 13 | 14 | \item{gcID}{(Character) The name of the analyzed sample.} 15 | 16 | \item{control}{A \code{grofit.control} object created with \code{\link{growth.control}}, defining relevant fitting options.} 17 | } 18 | \value{ 19 | A \code{gcBootSpline} object containing a distribution of growth parameters and 20 | a \code{gcFitSpline} object for each bootstrap sample. Use \code{\link{plot.gcBootSpline}} 21 | to visualize all bootstrapping splines as well as the distribution of 22 | physiological parameters. 23 | \item{raw.time}{Raw time values provided to the function as \code{time}.} 24 | \item{raw.data}{Raw growth data provided to the function as \code{data}.} 25 | \item{gcID}{(Character) Identifies the tested sample.} 26 | \item{boot.time}{Table of time values per column, resulting from each spline fit of the bootstrap.} 27 | \item{boot.data}{Table of growth values per column, resulting from each spline fit of the bootstrap.} 28 | \item{boot.gcSpline}{List of \code{gcFitSpline} object, created by \code{\link{growth.gcFitSpline}} for each resample of the bootstrap.} 29 | \item{lambda}{Vector of estimated lambda (lag time) values from each bootstrap entry.} 30 | \item{mu}{Vector of estimated mu (maximum growth rate) values from each bootstrap entry.} 31 | \item{A}{Vector of estimated A (maximum growth) values from each bootstrap entry.} 32 | \item{integral}{Vector of estimated integral values from each bootstrap entry.} 33 | \item{bootFlag}{(Logical) Indicates the success of the bootstrapping operation.} 34 | \item{control}{Object of class \code{grofit.control} containing list of options passed to the function as \code{control}.} 35 | } 36 | \description{ 37 | \code{growth.gcBootSpline} resamples the growth-time value pairs in a dataset with replacement and performs a spline fit for each bootstrap sample. 38 | } 39 | \examples{ 40 | # Create random growth dataset 41 | rnd.dataset <- rdm.data(d = 35, mu = 0.8, A = 5, label = 'Test1') 42 | 43 | # Extract time and growth data for single sample 44 | time <- rnd.dataset$time[1,] 45 | data <- rnd.dataset$data[1,-(1:3)] # Remove identifier columns 46 | 47 | # Introduce some noise into the measurements 48 | data <- data + stats::runif(97, -0.01, 0.09) 49 | 50 | # Perform bootstrapping spline fit 51 | TestFit <- growth.gcBootSpline(time, data, gcID = 'TestFit', 52 | control = growth.control(fit.opt = 's', nboot.gc = 50)) 53 | 54 | plot(TestFit, combine = TRUE, lwd = 0.5) 55 | 56 | } 57 | \references{ 58 | Matthias Kahm, Guido Hasenbrink, Hella Lichtenberg-Frate, Jost Ludwig, Maik Kschischo (2010). \emph{grofit: Fitting Biological Growth Curves with R}. Journal of Statistical Software, 33(7), 1-21. DOI: 10.18637/jss.v033.i07 59 | } 60 | \seealso{ 61 | Other growth fitting functions: 62 | \code{\link{growth.drFit}()}, 63 | \code{\link{growth.gcFit}()}, 64 | \code{\link{growth.gcFitLinear}()}, 65 | \code{\link{growth.gcFitModel}()}, 66 | \code{\link{growth.gcFitSpline}()}, 67 | \code{\link{growth.workflow}()} 68 | } 69 | \concept{growth fitting functions} 70 | -------------------------------------------------------------------------------- /man/growth.gcFitModel.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/parametric_fits.R 3 | \name{growth.gcFitModel} 4 | \alias{growth.gcFitModel} 5 | \title{Fit nonlinear growth models to growth data} 6 | \usage{ 7 | growth.gcFitModel(time, data, gcID = "undefined", control = growth.control()) 8 | } 9 | \arguments{ 10 | \item{time}{Vector of the independent variable (usually time).} 11 | 12 | \item{data}{Vector of dependent variable (usually growth values).} 13 | 14 | \item{gcID}{(Character) The name of the analyzed sample.} 15 | 16 | \item{control}{A \code{grofit.control} object created with \code{\link{growth.control}}, defining relevant fitting options.} 17 | } 18 | \value{ 19 | A \code{gcFitModel} object that contains physiological parameters and information about the best fit. Use \code{\link{plot.gcFitModel}} to visualize the parametric fit and growth equation. 20 | \item{raw.time}{Raw time values provided to the function as \code{time}.} 21 | \item{raw.data}{Raw growth data provided to the function as \code{data}.} 22 | \item{gcID}{(Character) Identifies the tested sample.} 23 | \item{fit.time}{Fitted time values.} 24 | \item{fit.data}{Fitted growth values.} 25 | \item{parameters}{List of determined growth parameters.} 26 | \itemize{ 27 | \item \code{A}: Maximum growth. 28 | \item \code{dY}: Difference in maximum growth and minimum growth of the fitted model. 29 | \item \code{mu}: Maximum growth rate (i.e., maximum in first derivative of the spline). 30 | \item \code{lambda}: Lag time. 31 | \item \code{b.tangent}: Intersection of the tangent at the maximum growth rate with the abscissa. 32 | \item \code{fitpar}: For some models: list of additional parameters used in the equations describing the growth curve. 33 | \item \code{integral}: Area under the curve of the parametric fit. 34 | } 35 | \item{model}{(Character) The model that obtained the fit with the lowest AIC, determined by \code{\link{AIC}}.} 36 | \item{nls}{\code{nls} object for the chosen model generated by the \code{\link{nls}} function.} 37 | \item{reliable}{(Logical) Indicates whether the performed fit is reliable (to be set manually).} 38 | \item{fitFlag}{(Logical) Indicates whether a parametric model was successfully fitted on the data.} 39 | \item{control}{Object of class \code{grofit.control} containing list of options passed to the function as \code{control}.} 40 | } 41 | \description{ 42 | \code{growth.gcFitModel} determines a parametric growth model that best describes the data. 43 | } 44 | \examples{ 45 | # Create random growth dataset 46 | rnd.dataset <- rdm.data(d = 35, mu = 0.8, A = 5, label = 'Test1') 47 | 48 | # Extract time and growth data for single sample 49 | time <- rnd.dataset$time[1,] 50 | data <- rnd.dataset$data[1,-(1:3)] # Remove identifier columns 51 | 52 | # Perform parametric fit 53 | TestFit <- growth.gcFitModel(time, data, gcID = 'TestFit', 54 | control = growth.control(fit.opt = 'm')) 55 | 56 | plot(TestFit, basesize = 18, eq.size = 1.5) 57 | 58 | } 59 | \references{ 60 | Matthias Kahm, Guido Hasenbrink, Hella Lichtenberg-Frate, Jost Ludwig, Maik Kschischo (2010). \emph{grofit: Fitting Biological Growth Curves with R}. Journal of Statistical Software, 33(7), 1-21. DOI: 10.18637/jss.v033.i07 61 | } 62 | \seealso{ 63 | Other growth fitting functions: 64 | \code{\link{growth.drFit}()}, 65 | \code{\link{growth.gcBootSpline}()}, 66 | \code{\link{growth.gcFit}()}, 67 | \code{\link{growth.gcFitLinear}()}, 68 | \code{\link{growth.gcFitSpline}()}, 69 | \code{\link{growth.workflow}()} 70 | } 71 | \concept{growth fitting functions} 72 | -------------------------------------------------------------------------------- /inst/shiny_manuals/growth.gcFitModel.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/parametric_fits.R 3 | \name{growth.gcFitModel} 4 | \alias{growth.gcFitModel} 5 | \title{Fit nonlinear growth models to growth data} 6 | \usage{ 7 | growth.gcFitModel(time, data, gcID = "undefined", control = growth.control()) 8 | } 9 | \arguments{ 10 | \item{time}{Vector of the independent variable (usually time).} 11 | 12 | \item{data}{Vector of dependent variable (usually growth values).} 13 | 14 | \item{gcID}{(Character) The name of the analyzed sample.} 15 | 16 | \item{control}{A \code{grofit.control} object created with \code{\link{growth.control}}, defining relevant fitting options.} 17 | } 18 | \value{ 19 | A \code{gcFitModel} object that contains physiological parameters and information about the best fit. Use \code{\link{plot.gcFitModel}} to visualize the parametric fit and growth equation. 20 | \item{raw.time}{Raw time values provided to the function as \code{time}.} 21 | \item{raw.data}{Raw growth data provided to the function as \code{data}.} 22 | \item{gcID}{(Character) Identifies the tested sample.} 23 | \item{fit.time}{Fitted time values.} 24 | \item{fit.data}{Fitted growth values.} 25 | \item{parameters}{List of determined growth parameters.} 26 | \itemize{ 27 | \item \code{A}: {Maximum growth.} 28 | \item \code{dY}: {Difference in maximum growth and minimum growth of the fitted model.} 29 | \item \code{mu}: {Maximum growth rate (i.e., maximum in first derivative of the spline).} 30 | \item \code{lambda}: {Lag time.} 31 | \item \code{b.tangent}: {Intersection of the tangent at the maximum growth rate with the abscissa.} 32 | \item \code{fitpar}: {For some models: list of additional parameters used in the equations describing the growth curve.} 33 | \item \code{integral}: {Area under the curve of the parametric fit.} 34 | } 35 | \item{model}{(Character) The model that obtained the fit with the lowest AIC, determined by \code{\link{AIC}}.} 36 | \item{nls}{\code{nls} object for the chosen model generated by the \code{\link{nls}} function.} 37 | \item{reliable}{(Logical) Indicates whether the performed fit is reliable (to be set manually).} 38 | \item{fitFlag}{(Logical) Indicates whether a parametric model was successfully fitted on the data.} 39 | \item{control}{Object of class \code{grofit.control} containing list of options passed to the function as \code{control}.} 40 | } 41 | \description{ 42 | \code{growth.gcFitModel} determines a parametric growth model that best describes the data. 43 | } 44 | \examples{ 45 | # Create random growth dataset 46 | rnd.dataset <- rdm.data(d = 35, mu = 0.8, A = 5, label = 'Test1') 47 | 48 | # Extract time and growth data for single sample 49 | time <- rnd.dataset$time[1,] 50 | data <- rnd.dataset$data[1,-(1:3)] # Remove identifier columns 51 | 52 | # Perform parametric fit 53 | TestFit <- growth.gcFitModel(time, data, gcID = 'TestFit', 54 | control = growth.control(fit.opt = 'm')) 55 | 56 | plot(TestFit, basesize = 18, eq.size = 1.5) 57 | 58 | } 59 | \references{ 60 | Matthias Kahm, Guido Hasenbrink, Hella Lichtenberg-Frate, Jost Ludwig, Maik Kschischo (2010). \emph{grofit: Fitting Biological Growth Curves with R}. Journal of Statistical Software, 33(7), 1-21. DOI: 10.18637/jss.v033.i07 61 | } 62 | \seealso{ 63 | Other growth fitting functions: 64 | \code{\link{growth.drFit}()}, 65 | \code{\link{growth.gcBootSpline}()}, 66 | \code{\link{growth.gcFitLinear}()}, 67 | \code{\link{growth.gcFitSpline}()}, 68 | \code{\link{growth.gcFit}()}, 69 | \code{\link{growth.workflow}()} 70 | } 71 | \concept{growth fitting functions} 72 | -------------------------------------------------------------------------------- /man/plot.gcFitLinear.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_plots.R 3 | \name{plot.gcFitLinear} 4 | \alias{plot.gcFitLinear} 5 | \title{Generic plot function for \code{gcFittedLinear} objects. Plot the results of a linear regression on ln-transformed data} 6 | \usage{ 7 | \method{plot}{gcFitLinear}( 8 | x, 9 | log = "y", 10 | which = c("fit", "diagnostics", "fit_diagnostics"), 11 | pch = 21, 12 | cex.point = 1, 13 | cex.lab = 1.5, 14 | cex.axis = 1.3, 15 | lwd = 2, 16 | color = "firebrick3", 17 | y.lim = NULL, 18 | x.lim = NULL, 19 | plot = TRUE, 20 | export = FALSE, 21 | height = ifelse(which == "fit", 7, 5), 22 | width = ifelse(which == "fit", 9, 9), 23 | out.dir = NULL, 24 | ... 25 | ) 26 | } 27 | \arguments{ 28 | \item{x}{A \code{gcFittedLinear} object created with \code{\link{growth.gcFitLinear}} or stored within a \code{grofit} or \code{gcFit} object created with \code{\link{growth.workflow}} or \code{\link{growth.gcFit}}, respectively.} 29 | 30 | \item{log}{("x" or "y") Display the x- or y-axis on a logarithmic scale.} 31 | 32 | \item{which}{("fit" or "diagnostics") Display either the results of the linear fit on the raw data or statistical evaluation of the linear regression.} 33 | 34 | \item{pch}{(Numeric) Shape of the raw data symbols.} 35 | 36 | \item{cex.point}{(Numeric) Size of the raw data points.} 37 | 38 | \item{cex.lab}{(Numeric) Font size of axis titles.} 39 | 40 | \item{cex.axis}{(Numeric) Font size of axis annotations.} 41 | 42 | \item{lwd}{(Numeric) Line width.} 43 | 44 | \item{color}{(Character string) Enter color either by name (e.g., red, blue, coral3) or via their hexadecimal code (e.g., #AE4371, #CCFF00FF, #0066FFFF). A full list of colors available by name can be found at http://www.stat.columbia.edu/~tzheng/files/Rcolor.pdf} 45 | 46 | \item{y.lim}{(Numeric vector with two elements) Optional: Provide the lower (\code{l}) and upper (\code{u}) bounds on y-axis as a vector in the form \code{c(l, u)}.} 47 | 48 | \item{x.lim}{(Numeric vector with two elements) Optional: Provide the lower (\code{l}) and upper (\code{u}) bounds on the x-axis as a vector in the form \code{c(l, u)}.} 49 | 50 | \item{plot}{(Logical) Show the generated plot in the \code{Plots} pane (\code{TRUE}) or not (\code{FALSE}).} 51 | 52 | \item{export}{(Logical) Export the generated plot as PDF and PNG files (\code{TRUE}) or not (\code{FALSE}).} 53 | 54 | \item{height}{(Numeric) Height of the exported image in inches.} 55 | 56 | \item{width}{(Numeric) Width of the exported image in inches.} 57 | 58 | \item{out.dir}{(Character) Name or path to a folder in which the exported files are stored. If \code{NULL}, a "Plots" folder is created in the current working directory to store the files in.} 59 | 60 | \item{...}{Further arguments to refine the generated base R plot.} 61 | } 62 | \value{ 63 | A plot with the linear fit. 64 | } 65 | \description{ 66 | \code{plot.gcFitLinear} shows the results of a linear regression on log-transformed data and visualizes raw data, data points included in the fit, the tangent obtained by linear regression, and the lag time. 67 | } 68 | \examples{ 69 | # Create random growth dataset 70 | rnd.dataset <- rdm.data(d = 35, mu = 0.8, A = 5, label = "Test1") 71 | 72 | # Extract time and growth data for single sample 73 | time <- rnd.dataset$time[1,] 74 | data <- rnd.dataset$data[1,-(1:3)] # Remove identifier columns 75 | 76 | # Perform linear fit 77 | TestFit <- growth.gcFitLinear(time, data, gcID = "TestFit", 78 | control = growth.control(fit.opt = "l")) 79 | 80 | plot(TestFit) 81 | 82 | } 83 | -------------------------------------------------------------------------------- /NEWS.md: -------------------------------------------------------------------------------- 1 | # QurvE 1.1.2 2 | 3 | ## Bug fixes 4 | 5 | * fixed deprecation warning for aes_() 6 | * fixed warnings from plot.grid() 7 | * removed shinysurveys from Suggests (not available anymore) 8 | 9 | # QurvE 1.1.2 10 | 11 | ## Enhancements 12 | 13 | * Added area under the curve (AUC) to the results tables of spline fits (in QurvE functions as well as the app) 14 | * Users now have the ability to drag and drop selected conditions in group plots, controlling the order of the data series in the plot. 15 | * removed 'NeedsCompilation: yes' from DESCRIPTION file 16 | 17 | ## Bug fixes 18 | 19 | * fixed bugs that prevented the computation of bootstrapped nonparametric fits when the number of bootstrap samples was set to lower than 10. 20 | * fixed bugs that occurred when integer value were used as condition descriptors 21 | 22 | # QurvE 1.1.1 23 | 24 | ## Enhancements 25 | 26 | * `read_data()` now automatically assigns increasing replicate numbers to sample groups (identical "Description" and "Concentration") if all of their replicate values are missing or NA. 27 | 28 | ## Bug fixes 29 | 30 | * fixed bug during the parsing of tidy data if the combinations of Description/Concentration/Replicate were not unique (e.g., multiple 'Blank' samples, Issue #11). 31 | * fixed bug that occured in tidy_to_custom() with format='row'. 32 | * bug fixes in report creation (Issue #9); safer handling of image file creation if erros occur. 33 | * fixed missing values in grouped plots with mean=True if some replicates contained missing measurement (Issue #9). 34 | * In group plots: remove rows in data groups in which all values are NA to avoid gaps in plots. 35 | * bug fix in group plots for data series of unequal lengths. 36 | * Factors are removed from tidy dataframes to prevent incompatibilities. 37 | * fix to correctly assign time vectors to samples during tidy data parsing, if multiple time vectors were present. 38 | * fixed bug while assembling 'gcTable' if only a single sample was processed. 39 | * revised roxygen documentation to comply with new CRAN checks 40 | 41 | # QurvE 1.1 42 | 43 | ## Enhancements 44 | 45 | * `read_data()` now accepts files or dataframe objects in tidy format 46 | * the shiny app now allows inspection of code used to run workflows and generate plots 47 | * Parametric fits have Root Mean Squared Error (RMSE) added to the calculated parameters. The RMSE for each model fit has been also added to `gcTable` and the respective table within the shiny app. 48 | * `TinyTeX` is only installed from within the shiny app if the user explicitly approves. 49 | * added a [Q&A and Troubleshooting] vignette 50 | * added citation for publication *Wirth et al. (2023)* 51 | 52 | ## Bug fixes 53 | 54 | * the [sort by concentration] button for parameter plots in the shiny app now also is shown for data parsed from raw inputs, not only data parsed in custom format. 55 | * [Select read for fluorescence normalization] is not shown if Fluorescence is *ignored*. 56 | * Data is parsed correctly from CSV files if values are framed by explicit quotes 57 | 58 | # QurvE 1.0.1 59 | 60 | ## Enhancements 61 | 62 | * Report template .Rmd files are now copied into tempdir() before rendering to avoid bugs with restrictive write permissions. 63 | * In shiny app: Don’t show “Select Read for fluorescence normalization” if Fluorescence is [Ignore]. 64 | 65 | ## Bug fixes 66 | 67 | * Issue #4: In shiny app, checkbox 'sort by concentration' did not show after loading an old RData file. 68 | * Fixed bug in Gen5/Gen6 parser if only one read type was present. 69 | 70 | # QurvE 1.0 71 | 72 | * Added a `NEWS.md` file to track changes to the package. 73 | -------------------------------------------------------------------------------- /man/plot.drFitSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_plots.R 3 | \name{plot.drFitSpline} 4 | \alias{plot.drFitSpline} 5 | \title{Generic plot function for \code{drFitSpline} objects.} 6 | \usage{ 7 | \method{plot}{drFitSpline}( 8 | x, 9 | add = FALSE, 10 | ec50line = TRUE, 11 | log = "", 12 | pch = 16, 13 | colSpline = 1, 14 | colData = 1, 15 | cex.point = 1, 16 | cex.lab = 1.5, 17 | cex.axis = 1.3, 18 | y.lim = NULL, 19 | x.lim = NULL, 20 | y.title = NULL, 21 | x.title = NULL, 22 | lwd = 2, 23 | plot = TRUE, 24 | export = FALSE, 25 | height = 7, 26 | width = 9, 27 | out.dir = NULL, 28 | ... 29 | ) 30 | } 31 | \arguments{ 32 | \item{x}{object of class \code{drFitSpline}, created with \code{\link{growth.drFitSpline}}.} 33 | 34 | \item{add}{(Logical) Shall the fitted spline be added to an existing plot? \code{TRUE} is used internally by \code{\link{plot.drBootSpline}}.} 35 | 36 | \item{ec50line}{(Logical) Show pointed horizontal and vertical lines at the EC50 value (\code{TRUE}) or not (\code{FALSE}).} 37 | 38 | \item{log}{("x", "y", or "xy") Display the x- or y-axis on a logarithmic scale.} 39 | 40 | \item{pch}{(Numeric) Shape of the raw data symbols.} 41 | 42 | \item{colSpline}{(Numeric or character) Spline line colour.} 43 | 44 | \item{colData}{(Numeric or character) Contour color of the raw data circles.} 45 | 46 | \item{cex.point}{(Numeric) Size of the raw data symbols.} 47 | 48 | \item{cex.lab}{(Numeric) Font size of axis titles.} 49 | 50 | \item{cex.axis}{(Numeric) Font size of axis annotations.} 51 | 52 | \item{y.lim}{(Numeric vector with two elements) Optional: Provide the lower (\code{l}) and upper (\code{u}) bounds on the y-axis as a vector in the form \code{c(l, u)}. If only the lower or upper bound should be fixed, provide \code{c(l, NA)} or \code{c(NA, u)}, respectively.} 53 | 54 | \item{x.lim}{(Numeric vector with two elements) Optional: Provide the lower (\code{l}) and upper (\code{u}) bounds on the x-axis as a vector in the form \code{c(l, u)}. If only the lower or upper bound should be fixed, provide \code{c(l, NA)} or \code{c(NA, u)}, respectively.} 55 | 56 | \item{y.title}{(Character) Optional: Provide a title for the y-axis.} 57 | 58 | \item{x.title}{(Character) Optional: Provide a title for the x-axis.} 59 | 60 | \item{lwd}{(Numeric) Line width of spline.} 61 | 62 | \item{plot}{(Logical) Show the generated plot in the \code{Plots} pane (\code{TRUE}) or not (\code{FALSE}).} 63 | 64 | \item{export}{(Logical) Export the generated plot as PDF and PNG files (\code{TRUE}) or not (\code{FALSE}).} 65 | 66 | \item{height}{(Numeric) Height of the exported image in inches.} 67 | 68 | \item{width}{(Numeric) Width of the exported image in inches.} 69 | 70 | \item{out.dir}{(Character) Name or path to a folder in which the exported files are stored. If \code{NULL}, a "Plots" folder is created in the current working directory to store the files in.} 71 | 72 | \item{...}{Further arguments to refine the generated base R plot.} 73 | } 74 | \value{ 75 | A plot with the nonparametric dose-response fit. 76 | } 77 | \description{ 78 | \code{plot.drFitSpline} generates the spline fit plot for response-parameter vs. concentration data 79 | } 80 | \examples{ 81 | conc <- c(0, rev(unlist(lapply(1:18, function(x) 10*(2/3)^x))),10) 82 | response <- c(1/(1+exp(-0.7*(4-conc[-20])))+stats::rnorm(19)/50, 0) 83 | 84 | TestRun <- growth.drFitSpline(conc, response, drID = "test", 85 | control = growth.control(log.x.dr = TRUE, smooth.dr = 0.8)) 86 | 87 | print(summary(TestRun)) 88 | plot(TestRun) 89 | } 90 | -------------------------------------------------------------------------------- /man/growth.drFitSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dose-response-analysis.R 3 | \name{growth.drFitSpline} 4 | \alias{growth.drFitSpline} 5 | \title{Perform a smooth spline fit on response vs. concentration data of a single sample to determine the EC50.} 6 | \usage{ 7 | growth.drFitSpline(conc, test, drID = "undefined", control = growth.control()) 8 | } 9 | \arguments{ 10 | \item{conc}{Vector of concentration values.} 11 | 12 | \item{test}{Vector of response parameter values of the same length as \code{conc}.} 13 | 14 | \item{drID}{(Character) The name of the analyzed condition} 15 | 16 | \item{control}{A \code{grofit.control} object created with \code{\link{growth.control}}, defining relevant fitting options.} 17 | } 18 | \value{ 19 | A \code{drFitSpline} object. 20 | \item{raw.conc}{Raw data provided to the function as \code{conc}.} 21 | \item{raw.test}{Raw data for the response parameter provided to the function as \code{test}.} 22 | \item{drID}{(Character) Identifies the tested condition} 23 | \item{fit.conc}{Fitted concentration values.} 24 | \item{fit.test}{Fitted response values.} 25 | \item{spline}{\code{smooth.spline} object generated by the \code{\link{smooth.spline}} function.} 26 | \item{spline.low}{\code{x} and \code{y} values of \code{\link{lowess}} spline fit on raw data. Used to call \code{\link{smooth.spline}}.} 27 | \item{parameters}{List of parameters estimated from dose response curve fit.} 28 | \itemize{ 29 | \item \code{EC50}: Concentration at half-maximal response. 30 | \item \code{yEC50}: Response value related to EC50. 31 | \item \code{EC50.orig}: EC50 value in original scale, if a transformation was applied. 32 | \item \code{yEC50.orig}: Response value for EC50 in original scale, if a transformation was applied. 33 | } 34 | \item{fitFlag}{(Logical) Indicates whether a spline could fitted successfully to data.} 35 | \item{reliable}{(Logical) Indicates whether the performed fit is reliable (to be set manually).} 36 | \item{control}{Object of class \code{grofit.control} containing list of options passed to the function as \code{control}.} 37 | Use \code{\link{plot.drFitSpline}} to visualize the spline fit. 38 | } 39 | \description{ 40 | \code{growth.drFitSpline} performs a smooth spline fit determines the EC50 as the concentration 41 | at the half-maximum value of the response parameter of the spline. 42 | } 43 | \details{ 44 | During the spline fit with \code{\link{smooth.spline}}, higher weights are 45 | assigned to data points with a concentration value of 0, as well as to x-y pairs with 46 | a response parameter value of 0 and pairs at concentration values before 47 | zero-response parameter values. 48 | } 49 | \examples{ 50 | conc <- c(0, rev(unlist(lapply(1:18, function(x) 10*(2/3)^x))),10) 51 | response <- c(1/(1+exp(-0.7*(4-conc[-20])))+rnorm(19)/50, 0) 52 | 53 | TestRun <- growth.drFitSpline(conc, response, drID = 'test', 54 | control = growth.control(log.x.dr = TRUE, smooth.dr = 0.8)) 55 | 56 | print(summary(TestRun)) 57 | 58 | plot(TestRun) 59 | } 60 | \references{ 61 | Matthias Kahm, Guido Hasenbrink, Hella Lichtenberg-Frate, Jost Ludwig, Maik Kschischo (2010). \emph{grofit: Fitting Biological Growth Curves with R}. Journal of Statistical Software, 33(7), 1-21. DOI: 10.18637/jss.v033.i07 62 | 63 | Christian Ritz, Florent Baty, Jens C. Streibig, Daniel Gerhard (2015). \emph{Dose-Response Analysis Using R}. PLoS ONE 10(12): e0146021. DOI: 10.1371/journal.pone.0146021 64 | } 65 | \seealso{ 66 | Other dose-response analysis functions: 67 | \code{\link{flFit}()}, 68 | \code{\link{growth.drBootSpline}()}, 69 | \code{\link{growth.gcFit}()}, 70 | \code{\link{growth.workflow}()} 71 | } 72 | \concept{dose-response analysis functions} 73 | -------------------------------------------------------------------------------- /inst/shiny_manuals/growth.drFitSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dose-response-analysis.R 3 | \name{growth.drFitSpline} 4 | \alias{growth.drFitSpline} 5 | \title{Perform a smooth spline fit on response vs. concentration data of a single sample to determine the EC50.} 6 | \usage{ 7 | growth.drFitSpline(conc, test, drID = "undefined", control = growth.control()) 8 | } 9 | \arguments{ 10 | \item{conc}{Vector of concentration values.} 11 | 12 | \item{test}{Vector of response parameter values of the same length as \code{conc}.} 13 | 14 | \item{drID}{(Character) The name of the analyzed condition} 15 | 16 | \item{control}{A \code{grofit.control} object created with \code{\link{growth.control}}, defining relevant fitting options.} 17 | } 18 | \value{ 19 | A \code{drFitSpline} object. 20 | \item{raw.conc}{Raw data provided to the function as \code{conc}.} 21 | \item{raw.test}{Raw data for the response parameter provided to the function as \code{test}.} 22 | \item{drID}{(Character) Identifies the tested condition} 23 | \item{fit.conc}{Fitted concentration values.} 24 | \item{fit.test}{Fitted response values.} 25 | \item{spline}{\code{smooth.spline} object generated by the \code{\link{smooth.spline}} function.} 26 | \item{spline.low}{\code{x} and {y} values of \code{\link{lowess}} spline fit on raw data. Used to call \code{\link{smooth.spline}}.} 27 | \item{parameters}{List of parameters estimated from dose response curve fit.} 28 | \itemize{ 29 | \item \code{EC50}: {Concentration at half-maximal response.} 30 | \item \code{yEC50}: {Response value related to EC50.} 31 | \item \code{EC50.orig}: {EC50 value in original scale, if a transformation was applied.} 32 | \item \code{yEC50.orig}: {Response value for EC50 in original scale, if a transformation was applied.} 33 | } 34 | \item{fitFlag}{(Logical) Indicates whether a spline could fitted successfully to data.} 35 | \item{reliable}{(Logical) Indicates whether the performed fit is reliable (to be set manually).} 36 | \item{control}{Object of class \code{grofit.control} containing list of options passed to the function as \code{control}.} 37 | Use \code{\link{plot.drFitSpline}} to visualize the spline fit. 38 | } 39 | \description{ 40 | \code{growth.drFitSpline} performs a smooth spline fit determines the EC50 as the concentration 41 | at the half-maximum value of the response parameter of the spline. 42 | } 43 | \details{ 44 | During the spline fit with \code{\link{smooth.spline}}, higher weights are 45 | assigned to data points with a concentration value of 0, as well as to x-y pairs with 46 | a response parameter value of 0 and pairs at concentration values before 47 | zero-response parameter values. 48 | } 49 | \examples{ 50 | conc <- c(0, rev(unlist(lapply(1:18, function(x) 10*(2/3)^x))),10) 51 | response <- c(1/(1+exp(-0.7*(4-conc[-20])))+rnorm(19)/50, 0) 52 | 53 | TestRun <- growth.drFitSpline(conc, response, drID = 'test', 54 | control = growth.control(log.x.dr = TRUE, smooth.dr = 0.8)) 55 | 56 | print(summary(TestRun)) 57 | 58 | plot(TestRun) 59 | } 60 | \references{ 61 | Matthias Kahm, Guido Hasenbrink, Hella Lichtenberg-Frate, Jost Ludwig, Maik Kschischo (2010). \emph{grofit: Fitting Biological Growth Curves with R}. Journal of Statistical Software, 33(7), 1-21. DOI: 10.18637/jss.v033.i07 62 | 63 | Christian Ritz, Florent Baty, Jens C. Streibig, Daniel Gerhard (2015). \emph{Dose-Response Analysis Using R}. PLoS ONE 10(12): e0146021. DOI: 10.1371/journal.pone.0146021 64 | } 65 | \seealso{ 66 | Other dose-response analysis functions: 67 | \code{\link{flFit}()}, 68 | \code{\link{growth.drBootSpline}()}, 69 | \code{\link{growth.gcFit}()}, 70 | \code{\link{growth.workflow}()} 71 | } 72 | \concept{dose-response analysis functions} 73 | -------------------------------------------------------------------------------- /man/plot.gcFitModel.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_plots.R 3 | \name{plot.gcFitModel} 4 | \alias{plot.gcFitModel} 5 | \title{Generic plot function for \code{gcFitModel} objects.} 6 | \usage{ 7 | \method{plot}{gcFitModel}( 8 | x, 9 | raw = TRUE, 10 | pch = 1, 11 | colData = 1, 12 | equation = TRUE, 13 | eq.size = 1, 14 | colModel = "forestgreen", 15 | basesize = 16, 16 | cex.point = 2, 17 | lwd = 0.7, 18 | x.lim = NULL, 19 | y.lim = NULL, 20 | n.ybreaks = 6, 21 | plot = TRUE, 22 | export = FALSE, 23 | height = 6, 24 | width = 8, 25 | out.dir = NULL, 26 | ... 27 | ) 28 | } 29 | \arguments{ 30 | \item{x}{A \code{gcFittedModel} object created with \code{\link{growth.gcFitModel}} or stored within a \code{grofit} or \code{gcFit} object created with \code{\link{growth.workflow}} or \code{\link{growth.gcFit}}, respectively.} 31 | 32 | \item{raw}{(Logical) Show the raw data within the plot (\code{TRUE}) or not (\code{FALSE}).} 33 | 34 | \item{pch}{(Numeric) Symbol used to plot data points.} 35 | 36 | \item{colData}{(Numeric or Character) Color used to plot the raw data.} 37 | 38 | \item{equation}{(Logical) Show the equation of the fitted model within the plot (\code{TRUE}) or not (\code{FALSE}).} 39 | 40 | \item{eq.size}{(Numeric) Provide a value to scale the size of the displayed equation.} 41 | 42 | \item{colModel}{(Numeric or Character) Color used to plot the fitted model.} 43 | 44 | \item{basesize}{(Numeric) Base font size.} 45 | 46 | \item{cex.point}{(Numeric) Size of the raw data points.} 47 | 48 | \item{lwd}{(Numeric) Spline line width.} 49 | 50 | \item{x.lim}{(Numeric vector with two elements) Optional: Provide the lower (\code{l}) and upper (\code{u}) bounds on the x-axis as a vector in the form \code{c(l, u)}. If only the lower or upper bound should be fixed, provide \code{c(l, NA)} or \code{c(NA, u)}, respectively.} 51 | 52 | \item{y.lim}{(Numeric vector with two elements) Optional: Provide the lower (\code{l}) and upper (\code{u}) bounds on y-axis of the growth curve plot as a vector in the form \code{c(l, u)}. If only the lower or upper bound should be fixed, provide \code{c(l, NA)} or \code{c(NA, u)}, respectively.} 53 | 54 | \item{n.ybreaks}{(Numeric) Number of breaks on the y-axis. The breaks are generated using \code{scales::pretty_breaks}. Thus, the final number of breaks can deviate from the user input.} 55 | 56 | \item{plot}{(Logical) Show the generated plot in the \code{Plots} pane (\code{TRUE}) or not (\code{FALSE}). If \code{FALSE}, a ggplot object is returned.} 57 | 58 | \item{export}{(Logical) Export the generated plot as PDF and PNG files (\code{TRUE}) or not (\code{FALSE}).} 59 | 60 | \item{height}{(Numeric) Height of the exported image in inches.} 61 | 62 | \item{width}{(Numeric) Width of the exported image in inches.} 63 | 64 | \item{out.dir}{(Character) Name or path to a folder in which the exported files are stored. If \code{NULL}, a "Plots" folder is created in the current working directory to store the files in.} 65 | 66 | \item{...}{Further arguments to refine the generated \code{ggplot2} plot.} 67 | } 68 | \value{ 69 | A plot with the parametric fit. 70 | } 71 | \description{ 72 | Plot the results of a parametric model fit on growth vs. time data 73 | } 74 | \examples{ 75 | # Create random growth dataset 76 | rnd.dataset <- rdm.data(d = 35, mu = 0.8, A = 5, label = "Test1") 77 | 78 | # Extract time and growth data for single sample 79 | time <- rnd.dataset$time[1,] 80 | data <- rnd.dataset$data[1,-(1:3)] # Remove identifier columns 81 | 82 | # Perform parametric fit 83 | TestFit <- growth.gcFitModel(time, data, gcID = "TestFit", 84 | control = growth.control(fit.opt = "m")) 85 | 86 | plot(TestFit, basesize = 18, eq.size = 1.5) 87 | 88 | } 89 | -------------------------------------------------------------------------------- /man/plot.flFitLinear.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/fluorescence_plots.R 3 | \name{plot.flFitLinear} 4 | \alias{plot.flFitLinear} 5 | \title{Generic plot function for \code{flcFittedLinear} objects. Plot the results of a linear regression on ln-transformed data} 6 | \usage{ 7 | \method{plot}{flFitLinear}( 8 | x, 9 | log = "", 10 | which = c("fit", "diagnostics", "fit_diagnostics"), 11 | pch = 21, 12 | cex.point = 1, 13 | cex.lab = 1.5, 14 | cex.axis = 1.3, 15 | lwd = 2, 16 | color = "firebrick3", 17 | y.lim = NULL, 18 | x.lim = NULL, 19 | plot = TRUE, 20 | export = FALSE, 21 | height = ifelse(which == "fit", 7, 5), 22 | width = ifelse(which == "fit", 9, 9), 23 | out.dir = NULL, 24 | ... 25 | ) 26 | } 27 | \arguments{ 28 | \item{x}{A \code{flFittedLinear} object created with \code{\link{flFitLinear}} or stored within a \code{flFitRes} or \code{flFit} object created with \code{\link{fl.workflow}} or \code{\link{flFit}}, respectively.} 29 | 30 | \item{log}{("x" or "y") Display the x- or y-axis on a logarithmic scale.} 31 | 32 | \item{which}{("fit" or "diagnostics") Display either the results of the linear fit on the raw data or statistical evaluation of the linear regression.} 33 | 34 | \item{pch}{(Numeric) Shape of the raw data symbols.} 35 | 36 | \item{cex.point}{(Numeric) Size of the raw data points.} 37 | 38 | \item{cex.lab}{(Numeric) Font size of axis titles.} 39 | 40 | \item{cex.axis}{(Numeric) Font size of axis annotations.} 41 | 42 | \item{lwd}{(Numeric) Line width.} 43 | 44 | \item{color}{(Character string) Enter color either by name (e.g., red, blue, coral3) or via their hexadecimal code (e.g., #AE4371, #CCFF00FF, #0066FFFF). A full list of colors available by name can be found at http://www.stat.columbia.edu/~tzheng/files/Rcolor.pdf} 45 | 46 | \item{y.lim}{(Numeric vector with two elements) Optional: Provide the lower (\code{l}) and upper (\code{u}) bounds on y-axis as a vector in the form \code{c(l, u)}.} 47 | 48 | \item{x.lim}{(Numeric vector with two elements) Optional: Provide the lower (\code{l}) and upper (\code{u}) bounds on the x-axis as a vector in the form \code{c(l, u)}.} 49 | 50 | \item{plot}{(Logical) Show the generated plot in the \code{Plots} pane (\code{TRUE}) or not (\code{FALSE}).} 51 | 52 | \item{export}{(Logical) Export the generated plot as PDF and PNG files (\code{TRUE}) or not (\code{FALSE}).} 53 | 54 | \item{height}{(Numeric) Height of the exported image in inches.} 55 | 56 | \item{width}{(Numeric) Width of the exported image in inches.} 57 | 58 | \item{out.dir}{(Character) Name or path to a folder in which the exported files are stored. If \code{NULL}, a "Plots" folder is created in the current working directory to store the files in.} 59 | 60 | \item{...}{Further arguments to refine the generated base R plot.} 61 | } 62 | \value{ 63 | A plot with the linear fit. 64 | } 65 | \description{ 66 | \code{plot.flFitLinear} shows the results of a linear regression and visualizes raw data, data points included in the fit, the tangent obtained by linear regression, and the lag time. 67 | } 68 | \examples{ 69 | # load example dataset 70 | input <- read_data(data.growth = system.file("lac_promoters_growth.txt", package = "QurvE"), 71 | data.fl = system.file("lac_promoters_fluorescence.txt", package = "QurvE"), 72 | csvsep = "\t", 73 | csvsep.fl = "\t") 74 | 75 | # Extract time and normalized fluorescence data for single sample 76 | time <- input$time[4,] 77 | data <- input$norm.fluorescence[4,-(1:3)] # Remove identifier columns 78 | 79 | # Perform linear fit 80 | TestFit <- flFitLinear(time = time, 81 | fl_data = data, 82 | ID = "TestFit", 83 | control = fl.control(fit.opt = "l", x_type = "time", 84 | lin.R2 = 0.95, lin.RSD = 0.1, 85 | lin.h = 20)) 86 | 87 | plot(TestFit) 88 | } 89 | -------------------------------------------------------------------------------- /man/parse_data.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/data_parsers.R 3 | \name{parse_data} 4 | \alias{parse_data} 5 | \title{Parse raw plate reader data and convert it to a format compatible with QurvE} 6 | \usage{ 7 | parse_data( 8 | data.file = NULL, 9 | map.file = NULL, 10 | software = c("Gen5", "Gen6", "Biolector", "Chi.Bio", "GrowthProfiler", "Tecan", 11 | "VictorNivo", "VictorX3"), 12 | convert.time = NULL, 13 | sheet.data = 1, 14 | sheet.map = 1, 15 | csvsep.data = ";", 16 | dec.data = ".", 17 | csvsep.map = ";", 18 | dec.map = ".", 19 | subtract.blank = TRUE, 20 | calib.growth = NULL, 21 | calib.fl = NULL, 22 | calib.fl2 = NULL, 23 | fl.normtype = c("growth", "fl2") 24 | ) 25 | } 26 | \arguments{ 27 | \item{data.file}{(Character) A table file with extension '.xlsx', '.xls', '.csv', '.tsv', or '.txt' containing raw plate reader (or similar device) data.} 28 | 29 | \item{map.file}{(Character) A table file in column format with extension '.xlsx', '.xls', '.csv', '.tsv', or '.txt' with 'well', 'ID', 'replicate', and 'concentration' in the first row. Used to assign sample information to wells in a plate.} 30 | 31 | \item{software}{(Character) The name of the software/device used to export the plate reader data.} 32 | 33 | \item{convert.time}{(\code{NULL} or string) Convert time values with a formula provided in the form \code{'y = function(x)'}. 34 | For example: \code{convert.time = 'y = 24 * x'}} 35 | 36 | \item{sheet.data, sheet.map}{(Numeric or Character) Number or name of the sheets in XLS or XLSX files containing experimental data or mapping information, respectively (\emph{optional}).} 37 | 38 | \item{csvsep.data, csvsep.map}{(Character) separator used in CSV data files (ignored for other file types). Default: \code{";"}} 39 | 40 | \item{dec.data, dec.map}{(Character) decimal separator used in CSV, TSV or TXT files with measurements and mapping information, respectively.} 41 | 42 | \item{subtract.blank}{(Logical) Shall blank values be subtracted from values within the same experiment (\link{TRUE}, the default) or not (\link{FALSE}).} 43 | 44 | \item{calib.growth, calib.fl, calib.fl2}{(Character or \code{NULL}) Provide an equation in the form 'y = function(x)' (for example: 'y = x^2 * 0.3 - 0.5') to convert growth and fluorescence values. This can be used to, e.g., convert plate reader absorbance values into \ifelse{html}{\out{OD600}}{\eqn{OD_{600}}} or fluorescence intensity into molecule concentrations. 45 | Caution!: When utilizing calibration, carefully consider whether or not blanks were subtracted to determine the calibration before selecting the input \code{subtract.blank = TRUE}.} 46 | 47 | \item{fl.normtype}{(Character string) Normalize fluorescence values by either diving by \code{'growth'} or by fluorescence2 values (\code{'fl2'}).} 48 | } 49 | \value{ 50 | A \code{grodata} object suitable to run \code{\link{growth.workflow}}. See \code{\link{read_data}} for its structure. 51 | } 52 | \description{ 53 | \code{parse_data} takes a raw export file from a plate reader experiment (or similar device), extracts relevant information and parses it into the format required to run \code{\link{growth.workflow}}. If more than one read type is found the user is prompted to assign the correct reads to \code{growth} or \code{fluorescence}. 54 | } 55 | \details{ 56 | Metadata provided as \code{map.file} needs to have the following layout: 57 | \figure{mapping-layout.png} 58 | } 59 | \examples{ 60 | if(interactive()){ 61 | grodata <- parse_data(data.file = system.file("fluorescence_test_Gen5.xlsx", package = "QurvE"), 62 | sheet.data = 1, 63 | map.file = system.file("fluorescence_test_Gen5.xlsx", package = "QurvE"), 64 | sheet.map = "mapping", 65 | software = "Gen5", 66 | convert.time = "y = x * 24", # convert days to hours 67 | calib.growth = "y = x * 3.058") # convert absorbance to OD values 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /man/plot.gcBootSpline.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/growth_plots.R 3 | \name{plot.gcBootSpline} 4 | \alias{plot.gcBootSpline} 5 | \title{Generic plot function for \code{gcBootSpline} objects.} 6 | \usage{ 7 | \method{plot}{gcBootSpline}( 8 | x, 9 | pch = 1, 10 | colData = 1, 11 | deriv = TRUE, 12 | colSpline = "dodgerblue3", 13 | cex.point = 1, 14 | cex.lab = 1.5, 15 | cex.axis = 1.3, 16 | lwd = 2, 17 | y.lim = NULL, 18 | x.lim = NULL, 19 | y.lim.deriv = NULL, 20 | plot = TRUE, 21 | export = FALSE, 22 | height = 7, 23 | width = 9, 24 | out.dir = NULL, 25 | combine = FALSE, 26 | ... 27 | ) 28 | } 29 | \arguments{ 30 | \item{x}{object of class \code{gcBootSpline}, created with \code{\link{growth.gcBootSpline}}.} 31 | 32 | \item{pch}{(Numeric) Symbol used to plot data points.} 33 | 34 | \item{colData}{(Numeric or character) Contour color of the raw data circles.} 35 | 36 | \item{deriv}{(Logical) Show the derivatives (i.e., slope) over time in a secondary plot (\code{TRUE}) or not (\code{FALSE}).} 37 | 38 | \item{colSpline}{(Numeric or character) Spline line colour.} 39 | 40 | \item{cex.point}{(Numeric) Size of the raw data points.} 41 | 42 | \item{cex.lab}{(Numeric) Font size of axis titles.} 43 | 44 | \item{cex.axis}{(Numeric) Font size of axis annotations.} 45 | 46 | \item{lwd}{(Numeric) Spline line width.} 47 | 48 | \item{y.lim}{(Numeric vector with two elements) Optional: Provide the lower (\code{l}) and upper (\code{u}) bounds on y-axis of the growth curve plot as a vector in the form \code{c(l, u)}. If only the lower or upper bound should be fixed, provide \code{c(l, NA)} or \code{c(NA, u)}, respectively.} 49 | 50 | \item{x.lim}{(Numeric vector with two elements) Optional: Provide the lower (\code{l}) and upper (\code{u}) bounds on the x-axis of both growth curve and derivative plots as a vector in the form \code{c(l, u)}. If only the lower or upper bound should be fixed, provide \code{c(l, NA)} or \code{c(NA, u)}, respectively.} 51 | 52 | \item{y.lim.deriv}{(Numeric vector with two elements) Optional: Provide the lower (\code{l}) and upper (\code{u}) bounds on the y-axis of the derivative plot as a vector in the form \code{c(l, u)}. If only the lower or upper bound should be fixed, provide \code{c(l, NA)} or \code{c(NA, u)}, respectively.} 53 | 54 | \item{plot}{(Logical) Show the generated plot in the \code{Plots} pane (\code{TRUE}) or not (\code{FALSE}).} 55 | 56 | \item{export}{(Logical) Export the generated plot as PDF and PNG files (\code{TRUE}) or not (\code{FALSE}).} 57 | 58 | \item{height}{(Numeric) Height of the exported image in inches.} 59 | 60 | \item{width}{(Numeric) Width of the exported image in inches.} 61 | 62 | \item{out.dir}{(Character) Name or path to a folder in which the exported files are stored. If \code{NULL}, a "Plots" folder is created in the current working directory to store the files in.} 63 | 64 | \item{combine}{(Logical) Indicate whether both growth curves and parameter plots shall be shown within the same window.} 65 | 66 | \item{...}{Further arguments to refine the generated base R plot.} 67 | } 68 | \value{ 69 | A single plot with the all spline growth fits from the bootstrapping operation and statistical distribution of growth parameters if \code{combine = TRUE} or separate plots for growth fits and parameter distributions (if \code{combine = FALSE}). 70 | } 71 | \description{ 72 | Generic plot function for \code{gcBootSpline} objects. 73 | } 74 | \examples{ 75 | # Create random growth dataset 76 | rnd.dataset <- rdm.data(d = 35, mu = 0.8, A = 5, label = "Test1") 77 | 78 | # Extract time and growth data for single sample 79 | time <- rnd.dataset$time[1,] 80 | data <- rnd.dataset$data[1,-(1:3)] # Remove identifier columns 81 | 82 | # Introduce some noise into the measurements 83 | data <- data + stats::runif(97, -0.01, 0.09) 84 | 85 | # Perform bootstrapping spline fit 86 | TestFit <- growth.gcBootSpline(time, data, gcID = "TestFit", 87 | control = growth.control(fit.opt = "s", nboot.gc = 50)) 88 | 89 | plot(TestFit, combine = TRUE, lwd = 0.5) 90 | } 91 | -------------------------------------------------------------------------------- /inst/shiny_manuals/fl.drFit.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dose-response-analysis.R 3 | \name{fl.drFit} 4 | \alias{fl.drFit} 5 | \title{Fit a biosensor model (Meyer et al., 2019) to response vs. concentration data} 6 | \usage{ 7 | fl.drFit( 8 | flTable, 9 | control = fl.control(dr.method = "model", dr.parameter = "max_slope.spline") 10 | ) 11 | } 12 | \arguments{ 13 | \item{flTable}{A dataframe containing the data for the dose-response model estimation. Such table of class \code{flTable} can be obtained by running \code{\link{flFit}} with \code{dr.method = 'model'} as argument in the \code{fl.control} object.} 14 | 15 | \item{control}{A \code{fl.control} object created with \code{\link{fl.control}}, defining relevant fitting options.} 16 | 17 | \item{dr.method}{(Character) Perform either a smooth spline fit on response parameter vs. concentration data (\code{'spline'}) or fit a biosensor response model with \code{'model'} (proposed by Meyer et al., 2019).} 18 | 19 | \item{dr.parameter}{(Character or numeric) The response parameter in the output table to be used for creating a dose response curve. See \code{\link{fl.drFit}} for further details. Default: \code{'max_slope.spline'}, which represents the maximum slope of the spline fit Typical options include: \code{'max_slope.linfit'}, \code{'dY.linfit'}, \code{'max_slope.spline'}, and \code{'dY.spline'}.} 20 | } 21 | \value{ 22 | An object of class \code{drFit}. 23 | \item{raw.data}{Data that passed to the function as \code{flTable}.} 24 | \item{drTable}{Dataframe containing condition identifiers, fit options, and results of the dose-response analysis.} 25 | \item{drFittedModels}{List of all \code{drFitModel} objects generated by the call of \code{\link{fl.drFitModel}} for each distinct experiment.} 26 | \item{control}{Object of class \code{fl.control} created with the call of \code{\link{fl.control}}.} 27 | } 28 | \description{ 29 | Fit a biosensor model (Meyer et al., 2019) to response vs. concentration data 30 | } 31 | \details{ 32 | Common response parameters used in dose-response analysis:\if{html}{\out{
}}\if{html}{\out{
}}\if{html}{\out{}}Linear fit:\if{html}{\out{}}\if{html}{\out{
}}- max_slope.linfit: Fluorescence increase rate\if{html}{\out{
}}- lambda.linfit: Lag time\if{html}{\out{
}}- dY.linfit: Maximum Fluorescence - Minimum Fluorescence\if{html}{\out{
}}- A.linfit: Maximum fluorescence\if{html}{\out{
}}\if{html}{\out{
}}\if{html}{\out{}}Spline fit:\if{html}{\out{}}\if{html}{\out{
}}- max_slope.spline: Fluorescence increase rate\if{html}{\out{
}}- lambda.spline: Lag time\if{html}{\out{
}}- dY.spline: Maximum Fluorescence - Minimum Fluorescence\if{html}{\out{
}}- A.spline: Maximum fluorescence\if{html}{\out{
}}- integral.spline: Integral\if{html}{\out{
}}\if{html}{\out{
}}\if{html}{\out{}}Parametric fit:\if{html}{\out{}}\if{html}{\out{
}}- max_slope.model: Fluorescence increase rate\if{html}{\out{
}}- lambda.model: Lag time\if{html}{\out{
}}- dY.model: Maximum Fluorescence - Minimum Fluorescence\if{html}{\out{
}}- A.model: Maximum fluorescence\if{html}{\out{
}}- integral.model: Integral' 33 | } 34 | \examples{ 35 | \donttest{ 36 | # Load example dataset 37 | input <- read_data(data.fl = system.file('lac_promoters.xlsx', package = 'QurvE'), 38 | sheet.fl = 2 ) 39 | 40 | # Run fluorescence curve analysis workflow 41 | fitres <- flFit(fl_data = input$fluorescence, 42 | time = input$time, 43 | parallelize = FALSE, 44 | control = fl.control(x_type = 'time', norm_fl = FALSE, 45 | suppress.messages = TRUE)) 46 | 47 | # Perform dose-response analysis 48 | drFit <- fl.drFit(flTable = fitres$flTable, 49 | control = fl.control(dr.method = 'model', 50 | dr.parameter = 'max_slope.linfit')) 51 | 52 | # Inspect results 53 | summary(drFit) 54 | plot(drFit) 55 | } 56 | } 57 | \references{ 58 | Meyer, A.J., Segall-Shapiro, T.H., Glassey, E. et al. \emph{Escherichia coli “Marionette” strains with 12 highly optimized small-molecule sensors.} Nat Chem Biol 15, 196–204 (2019). DOI: 10.1038/s41589-018-0168-3 59 | } 60 | --------------------------------------------------------------------------------