A煤n no tienes acceso a esta clase

Crea una cuenta y contin煤a viendo este curso

Utilizar proyecto como un m贸dulo de Python

12/14
Recursos

Una vez descargado, puedes instalar un proyecto como m贸dulo de Python usando el siguiente comando en la terminal:

pip install --editable .

Para que se reinicie el kernel, cada vez que reimportes los m贸dulos despu茅s de hacer un cambio en estos, agrega esto en la primera celda:

%load_ext autoreload
%autoreload 2
  • El hacer el autoreload te ayuda a externalizar trozos de c贸digo en archivos .py, como la creaci贸n de gr谩ficos.
  • Los notebooks son buenos para hacer exploraci贸n, pero no para producci贸n.

Contribuci贸n creada por: N茅stor Arellano.

Aportes 14

Preguntas 3

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

Tarde varias horas instalando, eliminando y reinstalando la plantilla y creando el ambiente porque me generaba error el importar el m茅todo de 鈥減aths鈥, hasta que me rend铆 y continu茅 con el video y 鈥 deb铆 ver el video antes jajaaj

Esta clase me pareci贸 m谩gica, ahora puedo entender mucho mejor c贸mo funcionan los m贸dulos y como crearlos de acuerdo a mis necesidades. Excelente curso.

Definitivamente la mejor clase que he tomado. Tuve que pausar varias veces el video porque cambi茅 el nombre de mi proyecto, pero con los cursos que he tomado antes en Platzi no fue tan dif铆cil. Definitivamente esto ha abierto las puertas a una nueva manera de trabajar.

Si est谩n trabajando desde WSL y llegan a tener inconvenientes con la clase les recomiendo que trabajen con esta configuraci贸n del environment.yml

# conda env create --file environment.yml
# mamba env create --file environment.yml
name: final_project
channels:
  - anaconda
  - conda-forge
  - defaults
dependencies:
  - invoke
  - jupyter
  - jupyterlab
  - matplotlib
  - nbdime
  - numpy
  - pandas
  - pip
  - plotly
  - pyprojroot
  - pyjanitor
  - python=3.9
  - seaborn 

Y tengan presente reiniciarle kernel del Notebook e incluso el mismo vscode, ya con eso podr谩n continuar sin problema 馃榿

Me parece importante hacer la menci贸n del archivo
__init__.py en las carpetas.

The __init__.py files are required to make Python treat the directories as containing packages; this is done to prevent directories with a common name, such as string, from unintentionally hiding valid modules that occur later on the module search path. In the simplest case, __init__.py can just be an empty file, but it can also execute initialization code for the package or set the __all__ variable. An example of the __init__.py file:

from math import sin
from my_package import my_func

Esta linea me trae problemas

covid_df = pd.read_csv(input_covid_file)

No encuentra el archivo 馃槮

Para los que tuvieron problemas con
import final_project.utils.paths as path , se debe a que el archivo .pynb se encuentra en una subcarpeta.
Se puede solucionar moviendo el archivo a la carpeta padre o simplemente agrengando las siguientes lineas antes de llamarlo.
**
import sys
sys.path.append("鈥")**

Si no te imprime la funcion que definiste en el Path, proba volviendo a abrir el editor luego de definirla.

Realizado

def latam_grafic(df: pd.DataFrame):
    sns.barplot(
        data=df,
        x="value",
        y="country_region",
        palette=df.color
    )

    plt.xlabel("Value")
    plt.ylabel("Country Region")
    plt.title("Latam countries in a global context");
    plt.subplots();

Ejecutar

visualize.latam_grafic(top_countries_df)

Top Countries function

def top_countries(df, countries, n):
    top_countries_df = (
    df
    .select_columns(["country_region", "value"])
    .groupby(["country_region"])
    .aggregate("sum")
    .sort_values("value", ascending=False)
    .reset_index()
    .head(20)
    .transform_column(
        column_name="country_region",
        function=lambda x: "red" if x in countries else "lightblue",
        dest_column_name="color"
        )
    )
    return top_countries_df.head(n)

Permite obtener la tabla de paises con su valor y color de acuerdo con el dataframe ingresado countries y el n煤mero de elementos n que se quiere visualizar:

Impresionante clase! Otro aplauso para Jesus!

Esta clase fu茅 genial, me gust贸 como ver todo aplicado , 100 de 10

Me marco un error la linea de los import:

import final_project.utils.paths as path

Ya instale el proyecto de datascience y active el ambiente project_final
Error:

ModuleNotFoundError Traceback (most recent call last)
C:\Users\PQUINO~1\AppData\Local\Temp/ipykernel_5572/1356770084.py in <module>
----> 1 import final_project.utils.paths as path
2 import janitor
3 import matplotlib.pyplot as plt
4 import pandas as pd
5 import seaborn as sns

ModuleNotFoundError: No module named 鈥榝inal_project鈥

Para terminar el proyecto, cre茅 esta funci贸n, simplemente para variar r谩pidamente la cantidad de pa铆ses que se muestren en el dataframe:

def  top_countries_df(num_countries: int = 10):
    return (processed_covid_df
    .select_columns(["country_region", "value"])
    .groupby(["country_region"])
    .aggregate("sum")
    .sort_values("value", ascending=False)
    .reset_index()
    .head(num_countries)
    .transform_column(
        column_name="country_region",
        function=lambda x: "red" if x in countries else "lightblue",
        dest_column_name="color"
    ))

Adicionalmente, en la carpeta visualize, coloqu茅 la funci贸n que graficar谩 a los pa铆ses Top en COVID:

def  plot_top_countries(df: pd.DataFrame):
    sns.barplot(
    data=df,
    x="value",
    y="country_region",
    palette=df.color
    )

    plt.xlabel("Value")
    plt.ylabel("Country Region")
    plt.title("Latam countries in a global context");

Entonces, para llamar a la funci贸n que graficar铆a el dataframe de los pa铆ses top:

visualize.plot_top_countries(top_countries_df())