0.0
No commit activity in last 3 years
No release in over 3 years
Evolving library to support analysing data for subjects with brain tumours, and driving graphical representations.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Development

~> 1.16
~> 10.0
~> 3.0
 Project Readme

Kaplan Meier Library

This current intent of this library is to support doing a Kaplan-Meier Survival Analysis and generating survival plots for subjects that have a brain tumour diagnosis. This is in support of research being conducted to help create better treatments and improve outcomes.

This does not mean it is only useful for that, but it is the initial driver of the interface for better or for worse.

Please dive in and suggest changes through issues and pull requests. The latter getting more attention.

I will be using a couple of sites to validate the approach. The current two sources I am using as truth are:

Installation

Add this line to your application's Gemfile:

gem 'kaplan_meier'

And then execute:

$ bundle

Or install it yourself as:

$ gem install kaplan_meier

Usage

TODO: Improve these but taking the example data and results from graphpad, here is the current way it would be used.

 # At some point I will try and generate decent docs.  If you look at the code
 # it is using named parameters.
  

km = KaplanMeier::Survival.new
km.add(46, 1, 1)
km.add(64, 0, 1)
km.add(78)
km.add(124)
km.add(130, 0, 1)
km.add(150, 0, 2)

km.raw_probabilities
km.raw_probabilities(as_percent: true)
km.probabilities
km.probabilities(as_percent: true)

km.range 
km.values_for_range

Use it to drive creating graphs like this using a charting library.

Survival Curve

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/seigel/kaplan_meier.

License

The gem is available as open source under the terms of the MIT License.