Skip to content

Releases: theislab/ehrapy

0.13.1 🌈

27 Dec 16:11

Choose a tag to compare

Changes

🧰 Maintenance

0.13.0 🌈

19 Dec 19:30

Choose a tag to compare

πŸš€ Features

  • Transitioning from AnnData to EHRData
    EHRData replaces AnnData as ehrapy's core data structure to better support time-series electronic health record data.
    The key enhancement is native support for 3D tensors (observations Γ— variables Γ— timesteps) alongside the existing 2D matrices, enabling efficient storage of longitudinal patient data.
    A new .tem DataFrame provides time-point annotations, complementing the existing .obs and .var annotations for comprehensive temporal data description.
    While EHRData maintains full backward compatibility with AnnData's API, users can now seamlessly work with time-series data and leverage specialized methods for temporal analysis.
    Existing code using AnnData objects will continue to work, but migration to EHRData is strongly recommended to access enhanced time-series functionality.
  • The preferred central data object is now EHRData (#908) @eroell
  • The layers argument is now available for all functions operating on X or layers (#908) @eroell
  • Update expected behaviour of io.read_fhir (#922) @eroell
  • Move mimic_2, mimic_2_preprocessed, diabetes_130_raw, diabetes_130_fairlearn to ehrdata.dt (#908)
  • Deprecate all ep.dt.*, refer to datasets in ehrdata (#908) @eroell
  • Support Python 3.14 (#996) @Zethson
  • Move kaplan_meier & cox_ph plots to holoviews (#995) @Zethson
  • Longitudinal normalization (#958) @agerardy
  • Add interactive ols plot (#992) @Zethson
  • Longitudinal and new qc_metrics (#967) @sueoglu
  • Simple Impute for timeseries (#975) @eroell
  • Simple implementation of balanced sampling (#937) @sueoglu
  • Add Sankey diagram visualization functions (#989) @sueoglu
  • Add ep.pl.timeseries() to visualize variables over time (#994) @sueoglu
  • Add GPU CI & skeleton (#998) @Zethson
  • Add FAMD (#976) @Zethson
  • 3D enabled implementation of ep.pp.filter_observations, ep.pp.filter_features (#953) @sueoglu
  • Add time series distances (#954) @Zethson

πŸ› Bug Fixes

🧰 Maintenance

0.12.1 🌈

23 May 20:38

Choose a tag to compare

Changes

πŸš€ Features

0.12.0 🌈

03 Mar 08:15
4c4db5f

Choose a tag to compare

Changes

πŸš€ Features

πŸ› Bug Fixes

🧰 Maintenance

0.11.0 🌈

06 Jan 16:13

Choose a tag to compare

Changes

✨ Features

πŸ› Bug Fixes

  • Fix scipy array support (#844) @Zethson
  • Fix casting to float when assigning numeric values; fixes normalization of integer arrays (#837) @eroell

0.10.0 🌈

02 Dec 08:12

Choose a tag to compare

πŸš€ Features

πŸ› Bug Fixes

πŸ“¦ Dependencies

0.8.0 🌈

20 May 20:38

Choose a tag to compare

Changes

πŸš€ Features

πŸ› Bug Fixes

🧰 Maintenance

0.7.0 🌈

22 Mar 12:33

Choose a tag to compare

Changes

πŸš€ Features

πŸ› Bug Fixes

0.6.0 🌈

19 Dec 10:48

Choose a tag to compare

Changes

πŸš€ Features

Breaking changes

  • Move information on numerical/non_numerical/encoded_non_numerical from .uns to .var (#630) @eroell

Make older AnnData objects compatible using

def move_type_info_from_uns_to_var(adata, copy=False):
    """
    Move type information from adata.uns to adata.var['ehrapy_column_type'].
    
    The latter is the current, updated flavor used by ehrapy.
    """
    if copy:
        adata = adata.copy()
        
    adata.var['ehrapy_column_type'] = 'unknown'

    if 'numerical_columns' in adata.uns.keys():
        for key in adata.uns['numerical_columns']:
            adata.var.loc[key, 'ehrapy_column_type'] = 'numeric'
    if 'non_numerical_columns' in adata.uns.keys():
        for key in adata.uns['non_numerical_columns']:
            adata.var.loc[key, 'ehrapy_column_type'] = 'non_numeric'
    if 'encoded_non_numerical_columns' in adata.uns.keys():
        for key in adata.uns['encoded_non_numerical_columns']:
            adata.var.loc[key, 'ehrapy_column_type'] = 'non_numeric_encoded'
            
    if copy:
        return adata

New features

πŸ› Bug Fixes

🧰 Maintenance

0.5.0 🌈

02 Aug 10:35

Choose a tag to compare

Changes

πŸš€ Features

πŸ› Bug Fixes

  • Fixed reading format warnings (#569) @namsaraeva
  • Fixed inability to normalize AnnData that does not require encoding (#568) @namsaraeva
  • Fixed adata.uns["non_numericlal_columns"] being empty in mimic_2 dataset (#567) @namsaraeva