Giter Club home page Giter Club logo

stenr's People

Watchers

 avatar

Forkers

digitmix

stenr's Issues

Better scale specification menagement

Create a better scale menagement

  • define a specific class to hold scale specification
  • choose the scale from scale specification appended to CompFreqtable during usage of compute_scores method
  • alternatively - support passing the FreqtableScale object into the CompFreqtable - automatically attach the scale
  • create a dedicated method for new scale attachement

Write first `testthat` tests for `comp_freqtable`

First testthat tests should be focused on running the code and getting all warnings for methods and functions:

  • functions:
    • gen_freqtable function to call comp_freqtable$new() method and create new object of that class
  • methods:
    • get_status
    • get_data_info
    • get_freqtables
    • compute_scores
    • get_scoretables
    • get_computed_scores
    • get_computed_scores_ext

Add human-friendly output of `get_status()` and `data_info()` methods

Currently, both of these methods produce output in the form of a list of results. It is useful for passing the results programmatically, but not human-friendly.

It should produce similar human-friendly output as s3 methods for summary(), eg. summary.lm. It should be optional to get the current output for these methods too: get_status(as.list = T).

Add method to append the data to the `comp_freqtable` if `keep_data = T` and recalculate frequency tables and all calculated scales

Currently, after initialization of the comp_freqtable object, it is impossible to modify the data kept inside. I think there is a possibility for the use case, when:

  1. at the initialization, the initial base of raw scores are fed into the object
  2. standard scores are being computed for the first participants to receive their results
  3. after the first stage, the raw scores of the next participants could be fed into the object, scores recalculated with the new data, and the standard scores fetched from the object

So the new method is necessary which should be:

  1. Possible only if there are already data kept
  2. Appending new data to the existing private$source_data
  3. Automatically recalculating freqtables, and calling self$compute_scores() for each standard score that was calculated before

Add slimmed up version of ScoreTable

Currently ScoreTable can be only created based on the collected raw data (using FrequencyTable) or simulated data based on the distribution description (SimFrequencyTable).

It seems to me as mandatory to also include some kind of slimmed up version - without the FrequencyTable object underlying its creation and usage

What will be gained:

  • the ability to allow importing score table described by the authors of the questionnaire itself (very important!)
  • the ability to calculate score table for different groups (eg. if in the columns will be values only for Male, Female, Other sex options, instead of other StandardScores
  • the ability to export created ScoreTable to the format used in measures documentations

What will be lost:

  • ability to recalculate ScoreTable to allow different StandardScores or appending new results
  • appending ScoreTable to current implementation of CompScoreTable

Add `GroupedCompScoreScale`

Addition of GroupedCompScoreTable, mimicking the behaviour of CompScoreTable - with underlying GroupedFrequencyTable and GroupedScoreTable objects

Also exporting ScoringTable should be allowed

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.