You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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.