Code Monkey home page Code Monkey logo

photogea's People

Contributors

ces343 avatar eloch216 avatar

Watchers

 avatar

photogea's Issues

Make fitting functions robust for bad curves

If an A-Ci curve with one or more Ci < 0 is passed to a fitting function, it will not be possible to find a fit. Make sure this doesn't cause a fatal error. Instead, we can just return NAs for parameters and fits.

Add better error messages for "uncalculated" spreadsheets

If a Licor data Excel file hasn't had its formulas "calculated," then many of its data columns will be read as all zeros. Eventually this will probably cause a problem with a later calculation, but it can be tough to diagnose. I could check for this when reading a file and give the user a message.

Improve help page titles

Many of the help page titles are simply the name of the function being documented, which isn't very helpful.

Add options for reading plain-text Licor files

Maybe add an excel boolean input to read_licor_file whose default value is TRUE. If it is set to FALSE, read a plain-text log file.

Another possibility: a function that converts a plain-text file to an Excel spreadsheet. (Does this already exist?)

Remove defaults for gm calculations

Many arguments to gm functions have default values. These should be removed, and the values should be specified in the analysis script. There also may be some hardcoded values that should be inputs.

Blank rows when loading Excel files

When rows are deleted in an Excel file, sometimes empty rows appear at the bottom of the file. These cause problems during analysis. There should be a warning when loading a file if any blank rows are found, since it usually indicates that a mistake was made while modifying the file.

Add general "data pipeline" vignette

This would explain the steps in analyzing any data: translating (from the original format into R structures), validating (removing any faulty measurements), processing (e.g. applying fits to response curves), and finally analyzing (computing averages across events or species, removing statistical outliers).

Create R package

This code is getting more complex, and it would be helpful to include the central functions as a library instead of having a bunch of R scripts that source each other

Consider residuals in C3 fitting example

Steve L has pointed out that non-random residuals may indicate that an A-Ci curve was measured too slow, and vcmax actually may have changed as CO2 levels are changed.

Convert units

Add a function for converting the units of a data file into coherent SI units. This will simplify a lot of calculations by removing tons of 10^n conversion factors.

Make "data file" class

Find some way to enforce rules about "data file" lists and provide some useful operations for them. This will simplify a lot of the code.

Add function for removing specific data points

As an input argument, it would take an exdf object and a list. Each element of the list should be a list that specifies one or more points to remove. For example:

list(
  list(species = 'tobacco', plot = 5, replicate = 1, seq_num = 3),
  list(species = 'soybean', plot = c(2, 3), seq_num = 4)
)

Then all rows in the exdf object that fulfill the conditions in the specifiers should be removed.

Make `read_licor_file` smarter

There's probably a way to automatically identify the preamble and header rows so the user doesn't need to specify them

Improve `is.exdf`

This function could also check that the object is a list with the proper elements, that the required elements are data frames, and that they all have the same column names. If any of these issues are detected, a warning could be issued.

Minor issues with `xyplot_avg_rc`

  • The colors supplied as the cols argument of xyplot_avg_rc get reversed. This probably shouldn't be the case.
  • The X mean and standard error get calculated even when x_error_bars is FALSE. This can cause problems when the X vector is a factor rather than numeric.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.