Skip to content

Releases: theislab/ehrdata

0.2.1 🌈 Release

13 May 10:05
450be56

Choose a tag to compare

Fixed

0.2.0 🌈 Release

14 Apr 10:12
72d9632

Choose a tag to compare

Fixed

  • Assigning .X to a view of an X-less {class}~ehrdata.EHRData (e.g. one created with layers= only) no longer raises TypeError: 'NoneType' object does not support item assignment. The view is now materialised before the assignment, consistent with how AnnData handles other field modifications on views. (#233) @eroell

Modified

  • {func}~ehrdata.infer_feature_types considers integers from 0, ..., n as numeric. It further provides a new argument binary_as, to steer if columns 0/1 should be considered numeric or categorical. (#231) @eroell

0.1.2 🌈 Release

24 Mar 19:52
811c3d2

Choose a tag to compare

Added

  • {func}~ehrdata.io.from_pandas with format='long' provides a new keyword argument fill_time_gaps that fills missing timegaps in the common case of integer time steps from 0 to n_timesteps (#229) @eroell

Modified

  • {func}~ehrdata.dt.mimic_2 column censor_flg switched to lifeline's convention with 1=event, 0=censored, before this dataset loader function had them vice versa since the dataset provides them as such originally. (#227) @sueoglu

Fixed

  • {func}~ehrdata.io.from_pandas with format='long' misordered entries in .X/.layers with .obs if the input df was not sorted for the obs id keys, which is now fixed. (#228) @eroell

Documentation

0.1.1 🌈 Release

04 Feb 11:18
f48c932

Choose a tag to compare

Added

  • {func}~ehrdata.io.omop.setup_connection can read .parquet files. (#217) @eroell

Fixed

  • Sliceing of EHRData objects fixed when the backing object is an AnnData. (#218) @eroell

Maintenance

  • More concise messages in {func}~ehrdata.infer_feature_types. (#215) @Zethson

0.1.0 🌈 Release

28 Jan 02:32
3cb0593

Choose a tag to compare

Added

  • {func}~ehrdata.move_to_obs and {func}~ehrdata.move_to_x are new helpers for conveniently moving variables from central 2D arrays to the .obs field, and vice versa. (#199) @eroell
  • {func}~ehrdata.dt.physionet2019 as another out-of-the-box, conveniently available dataset with 40'000 ICU stays from the Physionet 2019 challenge. (#204) @eroell
  • time_precision parameter ("date" or "datetime") to {func}~ehrdata.io.omop.setup_variables and {func}~ehrdata.io.omop.setup_interval_variables for finer temporal granularity control. (#210) @eroell

Fixed

  • {func}~ehrdata.io.read_h5ad fixed issues when backed=True. (#199) @eroell
  • {func}~ehrdata.io.read_h5ad fixed bug when .X is None and harmonize_missing_features is True. (#206) @eroell
  • {func}~ehrdata.io.omop.setup_obs with observation_table="person_visit_occurrence" now supports multiple visits per patient, creating one row per visit with unique observation IDs, instead of failing with xarray conversion errors with non-unique indices. (#210) @eroell
  • OMOP time interval boundaries now use half-open intervals [start, end) to prevent duplicate measurements at interval boundaries. (#210) @eroell

Maintenance

Modified

  • Dataset generator function ed.dt.ehrdata_blobs now takes n_cat_var and n_categories arguments to generate categorical (integer encoded) time series data (#207) @sueoglu
  • If enrich_var_with_feature_info=True in {func}~ehrdata.io.omop.setup_variables and {func}~ehrdata.io.omop.setup_interval_variables, data_table_concept_ids not included within the concept table are now mapped from their respective alternate concept_id included in the concept_relationship table to retrieve the available feature information. (#205) @KilianDahm
  • {func}~ehrdata.io.omop.setup_variables and {func}~ehrdata.io.omop.setup_interval_variables with use of "person" now checks birth_datetime for meaningful behaviour and error messages. (#210) @eroell
  • {func}~ehrdata.integrations.vitessce.gen_default_config provides convenience to generate a config directly from an EHRData object, and should be used instead of the previous ehrdata.integrations.vitessce.gen_config. (#211) @eroell

0.0.10 🌈 Release

04 Nov 11:25
66f3fe1

Choose a tag to compare

EHRData drops the .R field, and now supports 3D data storage in any slot of .layers. See the tutorials/getting_started tutorial for an introduction to this behaviour. In the future, .X will be enabled soon for 3D data storage as well.

Maintenance

Modified

  • EHRData drops the .R field in favor of using .layers for any 3D data arrays (#184) @eroell
  • EHRData's shape property will always return a 3 dimensional shape. If an EHRData object has flat arrays only, the third dimension will be 1. (#184) @eroell @flying-sheep @Zethson
  • The following functions now take a layer argument: ehrdata.io.read_csv, ehrdata.io.from_pandas, ehrdata.io.to_pandas, ehrdata.io.omop.setup_variables, ehrdata.io.omop.setup_interval_variables, ehrdata.dt.ehrdata_blobs, ehrdata.dt.physionet2012. If it is let to its default, None, the .X field of EHRData is used. Since .X is 2D in this release, in cases with 3D data, the layer argument needs to be used. (#184) @eroell
  • ehrdata.io.write_zarr now writes an EHRData specific store encoding, with anndata as a substore. This change allows to use AnnData with its change to consolidated Zarr metadata, and better isolates AnnData's io. (#185) @eroell @flying-sheep
  • ehrdata.io.read_zarr is adapted to read the new store encoding, and can also deal with AnnData stores. (#185) @eroell @flying-sheep

0.0.9 🌈 Release

16 Oct 18:13

Choose a tag to compare

Maintenance

0.0.8 🌈 Release

16 Sep 17:19
780ff26

Choose a tag to compare

Fixed

Maintenance

0.0.8a1 🌈 Pre-release

04 Sep 19:14
82f5b85

Choose a tag to compare

Pre-release

Maintenance

  • duckdb.duckdb to duckdb according to upcoming changes (#157) @eroell

0.0.7 🌈 Release

04 Sep 18:28
761e370

Choose a tag to compare

Fixed

Maintenance