Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dudas sobre Python 🐍 #12

Closed
ricardomiron opened this issue Aug 24, 2020 · 22 comments
Closed

Dudas sobre Python 🐍 #12

ricardomiron opened this issue Aug 24, 2020 · 22 comments
Assignees
Labels
help wanted Extra attention is needed pregunta Se solicita información
Milestone

Comments

@ricardomiron
Copy link
Member

Si tienes alguna duda sobre los conceptos básicos de programación 💻 o Python en específico puedes comentarlas aquí ⬇️ . También siéntete libre de ayudar a tus compañeros respondiendo si sabes resolver su duda 😄

@ricardomiron ricardomiron added help wanted Extra attention is needed pregunta Se solicita información labels Aug 24, 2020
@ricardomiron ricardomiron added this to the Ruta Coder milestone Aug 24, 2020
@ricardomiron ricardomiron pinned this issue Aug 24, 2020
@ricardomiron ricardomiron unpinned this issue Aug 28, 2020
@shan-david
Copy link

Seguí el ejercicio de listas a la par del vídeo, y tuve problemas en la parte de hacer la lista de escolaridad. La tabla la pude hacer pero al momento de querer iterar los ciclos no podía.
Es decir quise replicar el ejemplo:
Periodo: 2017

Árboles: 428

Pero con los datos de la tabla de escolaridad, pero sólo logré que se reflejaran los datos de las primeras dos columnas, el de la tercera no me salía, no sé cómo se tiene que escribir el código para que se impriman esos datos. Es decir, puse las funciones pero los datos me salieron así:

periodo: 2017

estudiantes: 38500

proporcion 2

En proporción tendría que ser el dato del porcentaje de la tercera columna, pero no los reconoce. Los datos en la tabla los puse:
['2015', 256000, '46.0'],
['2016', 330000, '48.5'],
['2017', 38500, '56.3'],
['2018', 476000, '49.0'],
['2019', 604000, '57.2'],
['2020', 870000, '62.4']

@RodolfoFerro
Copy link
Member

Hola @shan-david, si tienes una lista como la esta 👇🏼

escolaridad = [
   ['2015', 256000, '46.0'],
   ['2016', 330000, '48.5'],
   ...
]

Puedes usar un ciclo for e imprimir los datos como sigue:

# El siguiente código va dentro de un ciclo for
print("Periodo:", escolaridad["Periodo"])
print("No. de jóvenes:", escolaridad["Jóvenes (18-29)"])
print("Porcentaje:", escolaridad["% con estudios universitarios"])
print()

@shan-david
Copy link

Es que le sigo intentando, incluso copiando el código propuesto, pero lo que no puedo es que me reconozca los datos de la tercera columna. Es decir, sí me imprime bien período y no. de jóvenes. pero cuando el ciclo de porcentaje me marca error.
print("Periodo:", escolaridad[2][0])
print("No. de jóvenes:", escolaridad[2][1])

(Estos dos salen bien)

print("Porcentaje:", escolaridad[2][1][3])
Este es el que no sé cómo ponerlo para que me reconozca los datos de la tercera columna

@RodolfoFerro
Copy link
Member

RodolfoFerro commented Aug 29, 2020

@shan-david ¡Ah, pues entonces ya lo tienes!

Nota que si estos ya te funcionan bien 👇🏼

print("Periodo:", escolaridad[2][0])
print("No. de jóvenes:", escolaridad[2][1])

Entonces sólo debes cambiar el índice correspondiente:

print("Porcentaje:", escolaridad[2][2])

Nota que tú mencionas

print("Porcentaje:", escolaridad[2][1][3])
Este es el que no sé cómo ponerlo para que me reconozca los datos de la tercera columna

Pero allí estás intentando utilizar el índice 3 para una cuarta columna que no existe. Ojo con usar el índice 2 para la tercer columna, pues 0 -> primer columna, 1 -> segunda columna, 2 -> tercer columna.

@shan-david
Copy link

¡Ya pude! Es que me estaba costando entender un poco el código :) gracias

@shan-david
Copy link

Otra vez tuve un problema al intentar hacer el ejercicio de esta semana.
Cargué el Notebook para el ejercicio de COVID, seguí todos los pasos, cargué los archivos, y fui corriendo todos los códigos tal cual como venían.
De pronto cuando llegué a la parte para hacer los merge, pude hacer bien los de los estados, pero cuando llegué al de other_col me marcó error, y de pronto me dejó de reconocer los demás catálogos y me sale esto:


ValueError Traceback (most recent call last)
in ()
2 data = (
3 # unimos con el catálogo MUNICIPIOS y ENTIDADES
----> 4 data.merge(catalogues['de ENTIDADES'], how='left', left_on='entidad_res', right_on='clave_entidad').
5 drop(columns=['entidad_res', 'abreviatura']).
6 rename(columns={'entidad_federativa':'entidad_res'}).

3 frames
/usr/local/lib/python3.6/dist-packages/pandas/core/reshape/merge.py in _maybe_coerce_merge_keys(self)
1144 inferred_right in string_types and inferred_left not in string_types
1145 ):
-> 1146 raise ValueError(msg)
1147
1148 # datetimelikes must match exactly

ValueError: You are trying to merge on object and int64 columns. If you wish to proceed you should use pd.concat

Ya abrí dos archivos distintos para intentarle y me sigue marcando lo mismo, ¿qué es lo que debo corregir?

@RodolfoFerro
Copy link
Member

RodolfoFerro commented Sep 1, 2020

Hola @shan-david, como @ricardomiron menciona acá #15 (comment), la secretaría realizó algunos cambios con los datos, entonces el notebook ahora tiene un problema por los tipos de datos justo en la celda que realiza el merge (la que te marcó el error).

Danos oportunidad de solucionarlo verificando los datos y sus tipos, pero por ahora puedes omitir esa celda y continuar con las posteriores sin problema alguno. 👍🏼

@shan-david
Copy link

Hola @shan-david, como @ricardomiron menciona acá #15 (comment), la secretaría realizó algunos cambios con los datos, entonces el notebook ahora tiene un problema por los tipos de datos justo en la celda que realiza el merge (la que te marcó el error).

Danos oportunidad de solucionarlo verificando los datos y sus tipos, pero por ahora puedes omitir esa celda y continuar con las posteriores sin problema alguno. 👍🏼

Usé el nuevo Notebook y ya subí mi ejercicio, pero tuve un problema para poder sacar el número de casos positivos por estado, al parecer ese es el catálogo que tiene problemas.

Usé dos versiones del código:
data.groupby('entidad_res').resultado.value_counts(),
data.groupby(['entidad_res','resultado'])['id_registro'].count()

Y sólo me sacaba los primeros dos y los últimos dos estados, probé con otras combinaciones del código como

data[data.resultado == '1'].entidad_res.value_counts().sort_index() [puse número en vez de positivo porque el catálogo no se cargó] y me salió la leyenda
/usr/local/lib/python3.6/dist-packages/pandas/core/ops/array_ops.py:253: FutureWarning: elementwise comparison failed; returning scalar instead, but in the future will perform elementwise comparison
res_values = method(rvalues)
Series([], Name: entidad_res, dtype: int64)

@Glaydyesther
Copy link

Hola chic@s no es una pregunta de python pero no me da acceso a la página de Aprende León, me aparece esto


Imagen1

Si doy clic en seguir la página me envía a una encuesta de "Supuestamente Google" para hacerme acreedora de un Samsung" :( ¿Podrían apoyarme?


Pero si me permite ingresar a cualquier otra página normalmente
Imagen2
Incluso me permite ingresar normal a Github

@RodolfoFerro
Copy link
Member

RodolfoFerro commented Sep 4, 2020

Hola @Glaydyesther, posiblemente haya algún tema con el certificado de seguridad (SSL) de la plataforma de manera que tu antivirus lo detecte como un sitio no seguro. Si estás segura de que estás accediendo al sitio correcto (https://aprendeleon.com/) entonces puedes darle a la opción de "Aceptar el riesgo".

@Glaydyesther
Copy link

@RodolfoFerro Ese es el problema, cuando doy en la opción "Aceptar el riesgo" me envía directo a la publicidad de "Google" y de nuevo no me permite acceder. Ya hasta desinstalé mi antivirus y ni así. Incluso ingresé al link que adjuntaste y me marca de nuevo la nota que la página no es confiable.

@RodolfoFerro
Copy link
Member

@Glaydyesther Una opción es que intentemos con otro navegador, yo lo estoy abriendo desde Chrome sin problemas. 🤔

@Glaydyesther
Copy link

@RodolfoFerro Lo intenté abrir con Chrome y después con Edge , me siguió dando el mismo resultado en ambos. Y ya no sé qué más hacerle. Puedo ingresar a Github sin ningún problema.

@RodolfoFerro
Copy link
Member

Ya @ricardomiron está al tanto y se está coordinando con el equipo de comunicación del municipio para que verifiquen el sitio. Por acá estaremos compartiendo si hay algún movimiento y qué solución nos dan a esto.

@Glaydyesther
Copy link

Muchas gracias. Estaré al pendiente 🙂

@ricardomiron
Copy link
Member Author

Muchas gracias. Estaré al pendiente 🙂

Hola @Glaydyesther parece que ya está resuelto el problema.

@Glaydyesther
Copy link

Glaydyesther commented Sep 7, 2020

Lo he revisado, muchas gracias y en efecto ya está resuelto 👍

@shan-david
Copy link

Hola, buenos días,

Estoy trabajando en el proyecto final y estoy trabajando con una base de datos que tiene fechas, pero al momento de querer graficar los datos me marca el siguiente error:

TypeError: Object of type 'time' is not JSON serializable

No sé qué debo hacer para evitar esta falla, no sé si me puedan asesorar.

Gracias :)

@RodolfoFerro
Copy link
Member

Hola @shan-david, resulta que si quieres serializar objetos en un objeto JSON utilizando Python, dichos objetos deben ser tipos primitivos, esto es, los elementos deben ser de tipo int, float, etc.

Si el error que te arroja es el siguiente:

TypeError: Object of type 'time' is not JSON serializable

Te recomiendo que el formato de fecha que tienes en Python lo conviertas a un str antes de querer exportar el objeto JSON. :)

@davseg
Copy link

davseg commented Oct 18, 2020

Hola @RodolfoFerro y @ricardomiron! Espero se encuentren bien.

De antemano, una disculpa por escribir en fin de semana. Sin embargo, tengo un problema técnico con el proyecto final que no he logrado solucionar.

El fin de semana pasado (imagen 1 y 2) estaba concluyendo mi análisis del entorno emprendedor en Hidalgo pero lo pause debido al trabajo. Hoy que planeaba finalizarlo, me encuentro con que el Google Collab está completamente vacio (imagen 3) y sin historial de versiones (imagen 4).

No sé si tenga que ver con que el lunes se apagó de golpe mi laptop (debo mantenerla siempre conectada porque ya no funciona la bateria) pero me sorprende ya que el sábado y domingo podía visualizar mi proyecto sin ningún problema desde Google Drive y Github. Saben si hay alguna forma de recuperar el archivo? Lo he intentado todo la tarde por mi cuenta y con ayuda de algunas pistas en Stackoverflow (link1, link2 y link3) pero no he tenido éxito :(

Sé que ya pasó la fecha de entrega. No obstante, me interesaba terminarlo porque estaba obteniendo grandes hallazgos y quería aplicar los últimos temas de scrapeo y la generación de API´s

image
image
image
image

@RodolfoFerro
Copy link
Member

Hola @davseg, pudieron haber sucedido varias razones. ¿Abriste Colab desde tu Google Drive, desde GitHub o desde colab.research.google.com?

  • Si lo abriste desde Google Drive, puede ser que debido a que tu lap se apagó de golpe no hayas podido guardar el cuaderno.
  • Si lo abriste desde un cuaderno en GitHub, debes crear una copia para poder guardar cambios en Drive y/o guardarlos en tu repo de GitHub. (No se exporta a GitHub hasta que tú lo haces.)
  • Si lo abriste desde el sitio de Colab, se supone que se guarda en tu carpeta de Colab Notebooks en Drive, sin embargo si no aparece, puede suceder lo mismo que en el primer caso.

¿Tu situación recae en alguno de estos tres casos? Sigo pendiente. 👍🏼

@davseg
Copy link

davseg commented Oct 20, 2020

@RodolfoFerro gracias por tu pronta respuesta!

Originé el archivo desde el sitio de Colab e inmediatamente mandé una copia a mi Github, de tal modo que el archivo me aparecía en los 3 sitios (página de Colab, carpeta individual de Google Drive y Github). Igual no sé si influya en algo, pero recuerdo que a la hora de tener un par de archivos Colab abiertos desde la página, el logo desplegado en la pestaña de mi proyecto estaba en color rojo mientras el del resto de las pestañas era color naranja.

Tomando en cuenta lo que me platicas, parece imposible recuperarlo. Vaya forma de aprender la lección :(

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed pregunta Se solicita información
Projects
None yet
Development

No branches or pull requests

5 participants