def transform_data(data_df, model_info, cols_to_remove):
    """
        Función que permite realizar las primeras tareas de transformación
        de los datos de entrada.

        Args:
            data_df (DataFrame):  Dataset de entrada.
            model_info (dict):  Información del modelo en producción.
            cols_to_remove (list): Columnas a retirar.

        Returns:
           DataFrame. Dataset transformado.
    """

    print('------> Removing unnecessary columns')
    data_df = remove_unwanted_columns(data_df, cols_to_remove)

    data_df['Pclass'] = data_df['Pclass'].astype(str)

    # creando dummies originales
    print('------> Encoding data')
    print('---------> Getting encoded columns from cos')
    enc_key = model_info['objects']['encoders'] + '.pkl'
    # obteniendo las columnas presentes en el entrenamiento desde COS
    enc_cols = cos.get_object_in_cos(enc_key)
    # columnas dummies generadas en los datos de entrada
    data_df = pd.get_dummies(data_df)

    # agregando las columnas dummies faltantes en los datos de entrada
    data_df = data_df.reindex(columns=enc_cols, fill_value=0)

    return data_df.copy()
Ejemplo n.º 2
0
def load_model(file, bucket_name='proyecto4-uem-db'):
    """
        Función para cargar el modelo desde IBM COS
        Args:
            file (str): Nombre del archivo del modelo
        Kwargs:
            bucket_name (str):  depósito de IBM COS a usar.
    """
    model = cos.get_object_in_cos(file, bucket_name)
    return model
Ejemplo n.º 3
0
def load_model(name, bucket_name='uem-models-mzs'):
    """
         Función para cargar el modelo en IBM COS

         Args:
             name (str):  Nombre de objeto en COS a cargar.

         Kwargs:
             bucket_name (str):  depósito de IBM COS a usar.

        Returns:
            obj. Objeto descargado.
     """
    return cos.get_object_in_cos(name, bucket_name)
def input_missing_values(data_df, key):
    """
        Función para la imputación de nulos

        Args:
            data_df (DataFrame):  Dataset de entrada.
            key (str):  Nombre del objeto imputador en COS.

        Returns:
            DataFrame. Datasets de salida.
    """

    print('------> Inputing missing values')
    # obtenemos el objeto SimpleImputer desde COS
    imputer = cos.get_object_in_cos(key)
    data_df = pd.DataFrame(imputer.transform(data_df), columns=data_df.columns)

    return data_df.copy()