def METHOD_NAME(self, string: str) -> np.ndarray:
    """Compute one-hot featurization of string.
    Parameters
    ----------
    string: str
        An arbitrary string to be featurized.
    Returns
    -------
    np.ndarray
        An one hot vector encoded from arbitrary input string.
        The shape is `(max_length, len(charset) + 1)`.
        The index of unknown character is `len(charset)`.
    """
    if isinstance(self.max_length, int):
        if (len(string) > self.max_length):  # Validation
            raise ValueError(
                "The length of {} is longer than `max_length`.")
        string = self.pad_string(string)  # Padding
    return np.array([
        one_hot_encode(val, self.charset, include_unknown_set=True)
        for val in string
    ])