Skip to content

v3.1.0

Choose a tag to compare

@LTLA LTLA released this 23 Feb 05:00
· 29 commits to master since this release
  • Switch to a hard-coded KMKNN-like search instead of using knncolle. This greatly simplifies the dependencies and allows us to compute distance from sparse data (see below). We don't benefit much from the approximate methods anyway, given that k is always a proportion of the total number of samples for each reference label.
  • Support sparsity in the reference and test matrices. Sparsity is used to speed up the calculation of scaled ranks, as the zero values are not explicitly processed. For sparse references, only the ranks for the non-zero values are explicitly stored. This reduces memory usage for large single-cell references, and it allows us to use fast algorithms to compute the L2 norm.
  • Split out the classic marker detection algorithm into a separate library singler_classic_markers.
  • Removed the TrainedSingleIntersect() class, for simplicity. Renamed train_single_intersect() to a train_single() overload that returns a TrainedSingle instance. Similarly, renamed prepare_integrated_input_intersect() to a prepare_integrated_input() overload. Removed classify_single_intersect() entirely.