megnet.utils.general module¶
Operation utilities on lists and arrays
- check_shape(array: Optional[numpy.ndarray], shape: Sequence) bool [source]¶
Check if array complies with shape. Shape is a sequence of integer that may end with None. If None is at the end of shape, then any shapes in array after that dimension will match with shape.
- Example: array with shape [10, 20, 30, 40] matches with [10, 20, None], but
does not match with shape [10, 20, 30, 20]
- Parameters
array (np.ndarray or None) – array to be checked
shape (Sequence) – integer array shape, it may ends with None
Returns: bool
- expand_1st(x: numpy.ndarray) numpy.ndarray [source]¶
Adding an extra first dimension
- Parameters
x – (np.array)
- Returns
(np.array)
- fast_label_binarize(value: List, labels: List) List[int] [source]¶
Faster version of label binarize
label_binarize from scikit-learn is slow when run 1 label at a time. label_binarize also is efficient for large numbers of classes, which is not common in megnet
- Parameters
value – Value to encode
labels (list) – Possible class values
- Returns
List of integers
- Return type
([int])
- reshape(array: numpy.ndarray, shape: Sequence) numpy.ndarray [source]¶
Take an array and reshape it according to shape. Here shape may contain None field at the end.
if array shape is [3, 4] and shape is [3, 4, None], then array is shaped to [3, 4, 1]. If the two shapes do not match then report an error
- Parameters
array (np.ndarray) – array to be reshaped
shape (Sequence) – shape dimensions
Returns: np.ndarray, reshaped array