chemicalchecker.tool.targetmate.utils.pairs.Pairs

class Pairs(neg_pos_ratio=100, max_pos=1000, primary_side='right', test_size=0.2, n_splits=1, random_state=None)[source]

Bases: object

Pairs class samples/undersamples to accomplish a certain proportion of negative-positive

Initialize Pairs class

Parameters:
  • neg_pos_ratio (float) – Expected number of negatives per positives (default=10).

  • primary_side (str) – When doing the sampling, focus on balancing ‘right’ or ‘left’ (default=’right’).

  • max_pos (int) – Maximum number of positives to take into account (default=1000).

  • test_size (float) – When splitting, proportion of test samples (default=0.2).

  • n_splits (int) – When splitting, number of runs (default=1).

  • random_state (int) – Random state (default=None).

Methods

as_indices

Pairs iterator, returns indices

as_keys

Pairs iterator, remaps to keys

index_pairs

left_right_split

Split pairs by left and right sides

left_split

Split pairs by left side

naive_split

Split pairs randomly

right_split

Split pairs by right side

sample_balanced

Sample from the known pairs to obtain a longer list

sample_left

sample_random

save_h5

as_indices()[source]

Pairs iterator, returns indices

as_keys()[source]

Pairs iterator, remaps to keys

left_right_split()[source]

Split pairs by left and right sides

left_split()[source]

Split pairs by left side

naive_split()[source]

Split pairs randomly

right_split()[source]

Split pairs by right side

sample_balanced(pairs, keys_left, keys_right)[source]

Sample from the known pairs to obtain a longer list

Parameters:
  • pairs (list) – List of (key_left, key_right, 1/0) values.

  • keys_left (list) – Keys universe of the left side.

  • keys_right (list) – Keys universe of the right side.