Skip to main content

Git y Jupyter 2025

(00:00) el sí o aquí como como Claudia podéis poner aquí el el símbolo o si no por el por el chat que sé que bueno se tuvo que instalar sin ahora explicaremos un poquito qué es pero solo por si al menos lo consisteis instalar aunque fuera un poco a ciegas. Sí. Eh, Laura, por ahora solo ha comentado una persona lo del git. Si si al resto le fue bien, si puede ponerlo para para nosotros saberlo. Sí, ya empieza así. Perfecto, gracias. Sí, lo han instalado.
(00:38) Sí, vale. Porque sí, como comentaban, se como se comentó ayer y recuerdo hoy, se necesitará eso, tanto tener el git instalado y luego un usuario también creado en en la página web. Y bueno, mientras acabáis de poner si todo okay el git, bueno, como veremos ahora, hay que tener un poco de paciencia, como si fuera un poco un otra otro lenguaje e pero eh miraremos los comandos básicos para que nos sea un agobio y veréis que es una herramienta muy útil para
(01:22) trabajar en grupo y poder compartir código. No sé si alguna de las personas que estáis conectadas lo habéis usado antes y podéis levantar la la mano físicamente o virtualmente. ¿Alguien ya lo usó antes? Okay. Jesús que sí. Sí. Okay. Bueno, si ya Git Hubs usa un poquito, pues Git es solo es parecido al final el concepto.
(01:59) Sí, comentamos que sí, que hay un poco de problemas con mi micrófono, no se escucha muy alto, pero sí, ya es que si no paso un poco a chillar y si el chat está deshabilitado hoy, ¿no? Será cualquier cosa está. Bueno, yo ahora sí que lo estoy viendo el el chat del Discord, luego está ayer ahí pendiente, pero igual que ayer cualquier interacción será por el chat del Discord de del aula invertida 2025. Okay, Cualquier duda o comentario, pues estamos pendientes allí. Okay. Pues eh si también si alguien tuvo algún problema técnico, no se pudo crear un usuario que lo comenté
(02:45) también por el chat. Eh, pero bueno, intentaremos seguir, ya que la mayoría de personas parece ser que no ha habido ningún problema. Y bueno, os mostraré ahora un poquito y vamos y vamos haciendo. Okay, vuelvo a compartir pantalla. Perfecto. Okay, se ve ahora la pantalla. Sí, sí, perfecto. Vale, eso y también como comentaba ayer Marian, si alguna persona también prefiere pues hablarnos por el chat en Discord o a ver tampoco somos tantas
(03:39) tantas personas que si alguien levanta la mano también puede simplemente Es una carpeta donde tenemos diferentes, como podéis ver, hay hay códigos. Estos son Jupiter Notebooks, como Emilio, yo os enseñaba ayer un poquito. Hay imágenes también aquí, PNG y luego hay este de aquí inicial de Mardda. Y aquí veis un poco los comandos que estaremos usando hoy y también para que nadie se asuste un poco con Git ni ni GitHub. Eh, está bien.
(04:40) Por ejemplo, aquí en este proyecto teníamos aquí los pasos a seguir cuando queríamos eh añadir un un código o algún otro fichero a la carpeta y se tiene ahí como apunte y no hay que acordarse de todos estos comandos, ¿okay? que al final estamos todo el mundo con muchas cosas y nada y sirve como podéis para enseñaros un poco de manera general un comit luego es cuando alguien hace como una llamemos lo podemos llamar modificación, ¿no? Pues entonces aquí hubo como eh 20 modificaciones o también
(05:20) iría incluido si alguien añade un fichero nuevo. Eh, ¿qué más? En este caso podemos ver aquí el usuario que hizo el último comit en este en este repositorio. Entonces esto de git o GitHub funciona muy bien para aparte de compartir código y poder interactuar con diferentes personas. Aquí, por ejemplo, en este proyecto éramos cuatro personas interactuando.
(05:47) También sirve para, si queréis tener un un control de vuestros ficheros, se puede hacer, pues no sé, una copia de seguridad, no un disco duro, pero también si lo subís aquí al GitHub tenéis el historial. A ver, aquí saldrían como las diferentes versiones, diferentes ficheros, ¿no? Entonces también se llama esto un control de versión. podemos tener un poco en diferentes versiones lo mismo código, ¿no? Aquí, bueno, todo el mundo hemos tenido en algún momento, ¿no? Un fichero, un documento Word de versión 1,
(06:26) 2, 3, versión nueva y ya no sabemos, perdimos la cuenta y ya no sabemos qué versión usamos. Y con el con Git es una manera de tener esto un poco más eh ordenadito y pues eso cuesta un poquito e controlar un poco todos los diferentes comandos, pues es verdad que como ya se usa desde en centros de investigación, pues también hay muchas empresas que que lo usan ya en hay mucha información en línea y yo recomendaría practicar.
(06:57) Hoy vamos a empezar eh con lo muy básico y y de ahí vamos haciendo poco a poco, pero sobre todo yo recomendaría de ir probando. Podéis el jacatón también se si os apuntáis más adelante es también una manera de poner a prueba y al interactuar con más personas en esto, pero poco a poco. Okay. Pues bueno, empezamos. Ahora, para el primer paso, os tenéis que acordar de vuestro eh nombre de usuario. E si vais aquí a la página de de GitHub, aquí sale mi mi nombre de usuario, muy poco original,
(07:38) simplemente mi nombre y apellidos. Si no os acordáis, lo tenéis aquí. Y también necesitáis acordaros de con qué email os creasteis la cuenta en GHub. Okay. Entonces, eh, si no recuerdo mal de ayer, aquí hay diferentes personas usando diferentes sistemas operativos. En mi caso estoy en Mac. Eh, para los que tengan Mac pues es lo mismo. Si no, Linux también es equivalente.
(08:07) En Windows, eh, igual es un poquito distinto, pero bueno, si debería ir todo igual. Si hay algo que notáis pues funciona diferente, pues o levantáis la mano en Zoom o lo comentáis por el Discord sin problemas. Okay. Entonces, para esto vamos a ir a la Bueno, en el caso de Mac y Linux, la terminal, en el caso de Windows, abril el lo que os enseñaba ayer también Emilio, el Anaconda, el Anaconda Powerell o el o el prompt, lo que os vaya mejor. E este es en mi caso, mi mi [Música] terminal.
(08:54) Eh, ¿alguien todo el mundo puede encontrar para abrir esta terminal o el Anaconda Dromsen? Eh, Laura, comentan en el comentan en el chat si es posible hacer un poco más grande la pantalla, las letras. Se ve un poquito mejor. Ahora sí, yo lo veo al menos. A ver si Okay, vale. Pues si todo el mundo ha conseguido abrir su eso el Anaconda Power Shell o Anaconda Prom, también tenéis el Windows PowerSell, pero por lo que hicisteis ayer con Emilio, todo el mundo debería poder abrir
(09:45) el esta línea de de comando. Okay. [Música] No, eso vamos a necesitar usar esto hoy un poquito, así que eso si hay cualquier problema comunicarlo para que lo sepamos. ¿Vale? Bueno, okay. Pues eso, lo primero antes de empezar, si también ya conseguisteis instalar el git correctamente, podemos hacer una prueba y, por ejemplo, si hacemos así, okay, gitatus, a vosotros os debería salir algo, aunque sea un error, pero debería salir un mensaje que no fuese, «No tenéis git instalado.
(10:33) » o cualquier cosa. Sí, alguien pensaba que tenía el Git instalado, pero al final hay algún problema. Okay. Pues bueno, si sabemos que el kit nos funciona aquí desde la terminal que hemos abierto, lo primero es hacer como una configuración básica, ¿no? Entonces hay aquí podemos escribir git config gual y vamos a darle el el nombre de usuario. Así ya lo sabe. Eh Git cuál es. Laura te interrumpo de nuevo. Eh pregunta.
(11:26) Bueno, comenta Paco Quintana si puedes mostrar nuevamente los códigos iniciales. Los códigos iniciales. Bueno, esto fue lo abrir es la primera línea de de comando, simplemente abrir el la terminal con el Anaconda Power Shell o prompt y ya y no hace falta hacer nada más. Solo era probar que el git lo tuvierais bien bien instalado. Puede ser eso. Yo uso un comando cualquiera, puede ser, perdona, un git status, por ejemplo, y solo ver, bueno, a mí me sale que hay que un mensaje, pero no me sale
(12:09) el mensaje de gite. Eso es lo único. Sí, aquí les aparece Git Stat. Eh, comenta Paulo Hernández que no es un que le parece que no es un comando válido. G start, no, claro, tiene si es git tiene que ser status. Status. Sí, eso es. Pero bueno, si sale que no es uno válido, igual buena señal que simplemente fue un error de Sí, está instalado, pero no no funciona. Exacto. Vale. Okay. Bueno, pues vuelvo a escribir.
(12:50) Luego estoy haciendo haciendo una configuración básica de de esto del nombre de usuario. Ahora, si queréis, si no pondré también el comando y por ejemplo, no, en mi caso, mi nombre de usuario de del GitHub es simplemente mi nombre y apellidos y y le dais enter. No le doy enter que ya lo tengo configurado todo, pero mientras lo hacéis os lo voy a eh pegar aquí en el chat a ver si me dejó el chat. Ah, no, perdón, tengo el chat del el Discord.
(13:44) Okay, vale. Gracias, Emilio también el apoyo online. Ah, sí. Okay, pues el primer e ese es el primer paso y el segundo vamos a poner lo que os comentaba, el email asociado. Entonces va a ser otra vez lo mismo, git config global y en vez de user.name pondremos user. email @ email.com y estos dos comandos de decir cuál es el vuestro usuario y el email solo se hace una vez y ya y listo y no se tiene que hacer
(14:31) más. Okay, pongo aquí también el comando en el Discord. Eso tenéis que poner, o sea, dejar las comillas y realmente rellenar aquí con lo que sería vuestro ahora un poco me invento y ya. Esto es lo básico así de de configuración, ¿vale? Y luego no nos olvidamos de aquí de nuestra terminal. Vamos a crear una lo que os decía, ¿no? Un repositorio, nuestra carpeta donde vamos a tener eh los archivos. Okay, podemos ir aquí.
(15:21) Debéis estar en vuestra página inicial de del GitHub. Lo hago un poquito más grande y se puede crear un repositorio nuevo. Os debería salir aquí en plan esta este botoncito de new y la pantalla un poco pecado. Okay. Y vamos a crear aquí nuestra nuestro repositorio, nuestra carpeta y lo vamos a llamar prueba uno o si os apetece algún otro nombre que queráis. Eh, bueno, lo aquí os pide diferentes cosas para configurar la carpeta.
(16:05) Podéis darle una descripción, podéis decidir ya si esta si esta carpeta que vamos a crear sea pública y cualquier persona puede acceder o o privada. Entonces, de momento, como vamos a hacer pruebas, lo vamos a dejar como privado y pues se pueden aquí inicializar el repositorio de diferentes maneras. El el RM file, ahora veremos qué es. Y el y el Git ignore también es un fichero que se puede crear, que por ejemplo si si se quiere ignorar algún
(16:41) fichero que esté en nuestra carpeta y en la información con con el GitHubat, por ejemplo, si tenemos eh imágenes, imágenes no nos interesa añadirlas, se puede añadir en este fichero y no hay problema. Y luego aquí también se puede poner una una licencia, ¿no? Darle copyright al trabajo que tengamos aquí. aquí compartido, pero bueno, e no vamos a añadir nada de esto, lo vamos a dejar así básico.
(17:06) Y le damos aquí a crear repositorio, ¿okay? Y aquí cuando hemos creado el repositorio, pues nos aparece esta ventana y lo que está bien que sale e aquí todos los diferentes comandos básicos, como os mostraba antes que teníamos aquí en este eh en este ejemplo de repositorio. Entonces, bueno, se puede hacer de diferentes maneras. Nosotros lo que vamos a hacer es copiar aquí esta dirección donde están las eme nuestro repositorio, nuestra carpeta para tener una copia en local.
(17:53) Pues el git la manera en que funciona es tenemos una copia en local, ¿no? En vuestra ordenador ahora tendréis unos ficheros y luego el GitHub es como si fuera una copia en la nube, ¿no? No sé que igual usáis eh Google Drive o OneDrive o algún otro tipo de o Dropbox, pues esto sería como algo parecido. Entonces damos aquí a copiar esta dirección y ahora en volvemos a la a la terminal. o a vuestro prompt.
(18:28) Y yo, por ejemplo, e estoy en esta carpeta que se llama git, eh, que yo aquí en mi aquí en mi ordenador donde tengo, bueno, como veis aquí un montón de de diferentes repositorios que los tengo subidos al KitHub. Eh, podéis ver dónde dónde preferís descargaros esta esta carpeta. Y para eso, este comando aquí de Bash os muestra la dirección, ¿no? Yo sé que estoy aquí en mi directorio principal, en mi ordenador, dentro de una carpeta que se llama srcit. E bueno, hasta aquí más o menos. Okay.
(19:08) Y cuando ya sepáis dónde queréis instalar em vuestro vuestra esta carpeta de prueba de Git, podéis simplemente para ir a esa a esa dirección, una vez tengáis este la dirección del directorio, podéis hacer CD espacio y y poner pues bueno, le podría copiar la la dirección que tengo arriba. Y listo. Y ya sabemos que estamos aquí dentro de nuestra carpeta en nuestra en nuestra terminal. y nada, y podemos copiar aquí el la
(20:03) dirección em de donde tenemos nuestro repositorio y hacemos eh gitando se llama clone, ¿no? Entonces, lo que vamos a hacer es clonar esta carpeta que tenemos en la nube en Githam a nuestro ordenador local. Entonces ya podremos empezar esta este, ¿no? Control de las diferentes versiones de los ficheros entre lo que hagamos en nuestro ordenador y mandar la copia al GitHub. Okay, le damos a enter.
(20:35) Y bueno, a mí en mi caso me dice que he clonado aquí un repositorio que se llama prueba uno, ¿no? Y que bueno, de momento tenemos el repositorio que está que está vacío, que bueno, que eso es un poco lo que lo que queríamos. Entonces, eh ahora podemos ir dentro de esta de esta carpeta y yo se de prueba. Okay, le damos a enter y ahora sabemos que estamos dentro de esta carpeta y e ahora mismo aquí dentro no hay nada.
(21:11) A ver, para montarlos, mostraros un poco desde el buscador, que igual desde la terminal es un poco abstracto. Eh, voy a abrir aquí para que veáis también los directorios. Okay. No sé si veis también [Música] e aquí como os dije tengo mi carpeta de git y aquí dentro de todas un montón de repositores que tengo de GitHub hay esta carpeta que se llama prueba y que ahora mismo pues está está vacía. Okay, entonces ahora pues vamos a crear un fichero de prueba también aquí y lo vamos a intentar subir.
(21:55) Pero bueno, hasta aquí todo okay. Eh, okay. Veo que Jesús le sale un problema aquí. Le pide el usuario contraseña. Eh, okay. Claro. Igual si es la primera vez que esto tuvimos problemas otros años. Si es la primera vez que hacéis algo aquí con el GitHub, os pide que creéis, si tendréis que ver esto, este enlace que os que os pone aquí para crearos e lo llaman un token y entonces eso será como el la contraseña que os piden que utilicéis.
(22:40) Em, okay. Si queréis podemos esperar un, si más personas han tenido este problema, podemos esperar un par de minutitos que lo podáis configurar. Si no recuerdo mal, con este enlace debería ser rápido. A ver, es algo que al principio es un poco tedioso. Sí, no, no digo que simplemente que Jesús pone que gracias. entiendo que que lo ha solucionado. Okay. Pero bueno, imagino que igual a otras personas y es la primera vez que han creado esto les pueda ocurrir.
(23:17) También sé que ahora mucho es mucha información, igual también entre la terminal, el GitHub son muchas cosas, pero poco a poco porque también esta herramienta, como comentaba Marian ayer, igual también se necesita para para no para que podáis subir los ejercicios al final al final del curso. Pero bueno, e también hay otra alternativa. Si se consigue configurar esto, genial.
(23:45) si no veremos que también se puede hacer de otra de otra forma, pero bueno, esperamos un poquito eh de mientras no sé si surge alguna otra alguna otra duda o pregunta sobre esto. Quizás si puedan ir comentando por audio las personas que han conseguido hacer todo hasta ahora para ir viendo que vais siguiendo todos los pasos. Simplemente abrir el micro un momento y decir todo bien o lo que queráis. Preguntan también por la por dónde quedará la clase grabada, eh, porque había una persona que tenía problemas ahora de con escuchar la la voz de de Laura y querían
(24:40) saber si tenían acceso luego a la clase a la clase grabada. Sí, esta la suben a la plataforma de la ECID y en cuanto veo yo que está también lo pongo por el chat del Discord como he hecho hoy, o sea, que sí estará en unas horas subida por la decir que aquí también habías puesto, ¿no, Mari? Aquí donde estoy. Es verdad. Sí, también lo lo he puesto ahí. Pas enlace otra vez. el texto siguiente. Okay.
(25:22) Y el texto este que comenta eh Rosaliset, si esto es lo que no la dirección al al repositorio. [Música] E instalado una carpeta en la 99. Okay, okay. Sí, okay. El mensaje de Gabriela e sí, esto, si eso está bien. Es igual del mensaje que me salió a mí, porque eso simplemente copiamos una carpeta vacía porque no añadimos ninguno de los ficheros iniciales. Okay, genial. Bueno, al menos una persona Gabriela le salió. Vale, bueno, cualquier otra sí problema o duda lo podéis ir
(26:16) añendo por aquí. entiendo si que hay otras personas que tienen que reinstalar cosas, pero e sí si volvemos aquí eh ahora podemos añadir nuestro nuestro primer fichero, ¿no? O sea, podemos crear un un fichero. E, bueno, es que yo lo subo hacer todo desde la terminal, pero no sé si por ejemplo aquí desde el Word. Voy a crear Word o cualquier otro donde escribáis un punto txt o cualquier cosa que uséis de este de este estilo. Eh, y tenemos una instalación.
(27:02) Hola mundo, es lo típico que se suele usar y lo voy a guardar aquí en mi carpeta. [Música] y en vez de y lo voy a llamar eh también al documento prueba uno y en vez de dejarlo como box lo voy a guardar como fichero txt como plin texto es mejor se suele hacer también por el control de versión E yo con Word o Open Office no lo he usado mucho con con ficheros de texto. Ahora veremos también.mnd.
(27:53) Sí que la verdad es muy buen control de cambios. Vale, entonces tenemos aquí. Vale, ya tenemos aquí nuestro se vuelvo aquí la terminal. Ya vemos que tenemos aquí un fichero que que añadir y también nos sale aquí. Okay, vale, pues sí, si todo el mundo ya tiene algún fichero de prueba que haya hecho, doy un par de segundos más, pero sí, solo poner, vamos a hacer solo una prueba, podéis poner hola o o lo que queráis dentro del fichero. Y vale. Y lo primero que ahora vamos a hacer es como hay que inicializar.
(28:42) La primera vez que se usa el repositorio en local, hay que inicializarlo. Y ese comando simplemente otra vez todo empieza por giter. Y ya y ya listo. Tenemos como que se ha inicializado el repositorio. Ya está, ¿no? No hace falta nada más. Em también como nosotros hicimos un git clone en verdad hacer este comando por eso poner regionitialized existing repository e es un poco redundante porque ya creamos este repositorio como giton estos comando sobre todo lo importante si e primero creáis el
(29:30) repositorio la carpeta en local y luego lo empezáis pero bueno, hacerlo dos veces tampoco para que estéis seguros y seguros as siempre es mejor empezar así y luego vamos a añadir el el fichero a que hemos creado, ¿no? Entonces es gitart y el nombre del fichero prueba 1.hthx. Okay. Entonces ya tenemos el fichero como es un poco un sistema un poco extraño, como si lo fuéramos pasando un poco un fichero, no sé, siempre impresión como si lo fueras
(30:03) pasando por el túnel. Ahora no está ya añadido del todo, solo lo tiene en cuenta como que que hay algo que se está añadiendo. Y luego vamos a hacer, si os acordáis, lo que sale aquí en la página web de un comit aquí, ¿no? Los diferentes comits, ¿no? vamos a hacer una a que se a que el git sepa que se haya hecho una modificación y para eso hacemos git commit menos m de que le vamos a dar un mensaje y aquí vamos como es la primera vez que añadimos algo, vamos a poner mi
(30:46) primer comit, pero podría ser, por ejemplo, si yo cambiado el título de este fichero, pues tendría aquí en vez de mi primer comit cambio de título, así también se como versión nueva para entregar cualquier cosa que luego podamos en el GHub ver eh a qué se debía este a este comito. Vale, pues aquí ponemos el primer Git, damos al enter y ahora eh vamos a realmente hacer el paso final para que esto salga en en
(31:23) la nube, ¿no? Y perdón, no sab lo que Vale. Y aquí como os decía también yo de memoria tampoco nunca nunca me acuerdo, pero tenemos aquí un poco, ¿no? Los diferentes. Hemos hecho el bit, o sea, como se pone aquí los pasos en paréntesis solo hay que hacerlos la primera vez que se añade algo al repositorio. El gitpol. Ahora veremos lo que es.
(31:58) Hemos ya añadido el fichero, le hemos hecho un comit y ahora el último paso es el el git push. Como decía, como es la primera vez, vamos a hacer esto para que sepa eh qué estamos eh usando. Como he dicho, como hemos hecho el Git Clone, en principio no hace falta, pero bueno, vamos a probar para añadirlo y ver qué mensaje nos sale. Vale, pues hacemos espacio remote origin, que sería en cierta manera como conectar la carpeta local a la carpeta en en la nube de del bitub que usamos aquí para el git
(32:45) clone. Y damos a enter. Y veis aquí me da remote originis. Como ya hicimos el git clone este paso no no nos hace falta, pero bueno, como decía, como con el bitinit, por si algún día nos despistamos y lo hacemos de otra manera, tenemos aquí el comando. Okay. Y ahora sí que el paso final de verdad vamos a hacer git push y eso la primera vez vamos a añadir esto también pero si no si los pasos de después vemos que con un git push es es suficiente.
(33:23) Git espacio push- u origin hay toda la explicación de estos comandos. Creo que para primera vez que usa git es demasiada información entender todas las partes y solo con poder ejecutar todos los pasos. Yo creo que si hoy conseguí eso, ya está super bien. Okay, le doy aquí push y e ya me sale toda esta información. y que todo okay. Y si ahora, por ejemplo, hacemos en git status, eh, bueno, esto de las branches veremos ahora que es también, pero dice aquí que
(34:05) bueno, pues que la rama en la que estoy trabajando está todo está todo to date, que no tengo ninguit porque el único fichero que hay en la carpeta ya están añadido y que el working, o sea, todo salen aquí unos mensajes que que que todo okay. Y si vamos aquí a a mi GitHubard, a ver si actualizar prueba uno. Como veis, me aparece ahora aquí en en el nombre del GitHub el fichero que creamos en local.
(34:40) Aquel mensaje que le dimos, mi primer comit y y listo. Y con esto ya tendríamos algo añadido aquí por primera vez. Bueno, no sé si más o menos eh se pudo lo se consiguió más o menos. ¿Alguien tuvo algún problema? Veo que igual hubo algunos problemas, pero si tenéis ahí todos los pasos. E okay. E ves lo que te pone la Vale. Sí, si ahora lo estoy viendo. A ver si nos voy a compartir aquí el enlace de este repositorio de de ejemplo que también si alguna persona se puso como a cotidiar
(35:47) un poco cuáles fueron los proyectos del año pasado, eh, igual yo lo viste. Os paso este enlace que lleva a este repositorio de ejemplo y aquí abajo tenéis todos los los pasos que que hay que hacer. Y eh ahora vamos a ver que también hay otra otra manera de de [Música] añadir también cosas aquí. A ver. al repositorio. Bueno, mientras eh qué extraño. Vale, el error este de Carlos, entiendo que es cuando hiciste el último paso de, a ver, un momento aquí del del bit
(36:47) push, ¿no? y todos los pasos anteriores no no te dio ningún ningún error, ¿ya? O sea, aquí claro, en tu caso, no sé igual, no sé si es esto, pero tú igual puedes probar a hacer esto así. Ah, lo voy a copiar en el chat. intentar añadir esto, el bit remote ad origin y luego el nombre. Ya, esto así igual esto no da. A ver si esto resuelve el problema, porque por el error que da parece como sí, como si no estuvieran conectados el el local y el y el
(37:51) remoto, pero si recuerdo que tenéis que estar también eh en la misma, todo esto es en la en la misma carpeta, ¿no? Estoy aquí dentro de la carpeta prueba uno, es como se llama nuestro repositorio, prueba uno. Okay. No sé si hubo algunos otros problemas, pero bueno, lo voy a repetir varias veces. Así que el git cuesta cuesta al principio es ir poco a poco ir practicando, dar errores. Eh eh Okay, vale.
(38:33) Igual también te falta poner viendo el comentario de Carlos, poner el usuario, pero sí recordar sí que teníais que hacer también los comandos que puse al principio del Git Config con el nombre de usuario y el y el email, pero bueno, vamos a ver otra manera también más sencilla de de añadir cosas aquí al al KitHub. Eh, lo vamos a hacer, lo hicimos desde la terminal. Ahora vamos a intentar hacerlo aquí desde desde la página web.
(39:04) Entonces, yo voy a volver a la carpeta donde tengo mi mi fichero. Aquí dentro de la carpeta prueba uno y eh voy a hacer aquí una copia del fichero y lo voy a pegar. En mi caso lo voy a llamar eh prueba 2.tx. E así, okay. Cualquier solo por tener un un segundo fichero de de ejemplo con cómo con jugar. Y eh ahora lo voy a añadir a al KitHub directamente. Cogéis el si no recuerdo mal. Se puede simplemente arrastrarlo aquí. Y veis que me sale el símbolo este de más.
(39:58) Perdón, ya. Vale, vuelvo hacia atrás. Vale, primero tenemos que ir aquí a add file, upload files. Y ahora sí, se puede arrastrar el el fichero y y listo. Entonces, como veis ya aquí ya hemos añadido el ficheros y aquí tengo que poner el, ¿os acordáis? Esto es como si fuera el git ad. Hemos hecho ahora la acción del Kit Ad y ahora se ve aquí abajo de la página sale esta parte de commit changes, ¿no? Entonces, eh vamos a poner aquí otro mensaje.
(41:03) Entonces ponemos mi primer commit, mi segundo commit. Okay. Y aquí, bueno, sale. Puedes añadir más detalles si quieres de tu commit. Esto lo dejamos como está y le vamos aquí a Comites y ya cuando le das a commit changes es como si fuera el comment y el push. Entonces ahora aquí en nuestra pantalla sale lo de la tanto el repositorio el prueba uno y el prueba dos. Okay.
(41:35) Bueno, esta parte sí que imagino que no debería haber dado problemas, ¿no? Okay. Sí, veo aquí un Sí, gracias. El comentario de Jesús. Si puede ser que depende cómo se llame tu como rama principal a veces es main o master, pero sí, no hay ningún problema. Genial. Sí, gracias por compartirlo, porque igual otras personas también les ha pasado, no sé si fue el el caso de de Carlos también, pero sí, tanto main como master son equivalentes. Puedo hacer un comentario aquí.
(42:20) E hoy en día cuando uno crea un repositorio y la branch, la rama principal o la por defecto se llama main, e uno puede cambiarlo, pero esa es la que el sistema escoge. En el pasado se llama, el nombre era master, pero eso cambió en Ghop hace mínimo 2 años, 3 años. Me sorprende en realidad, Lauria que haya creado una como el nombre de master, ¿no? Sí, lo debo. No sé por qué ocurrió esa. Ya igual debe estar sin actualizar y está a la antigua.
(42:55) Pero sí es verdad que en otros repositorios sí que me pasó de que me pidiese eh tuviera que poner main también en vez de master. Ya no no sé. Es extraño. Sí, son nombres nada más, pero para lo que va a ocurrir es cuando uno crea un repositorio hoy en día se vaya le va a dar el nombre main a menos que una escoja uno decida cambiarlo. Ah, sí. Entonces, e si como ponía Jesús, simplemente es este comando del git push men u origin sería así, os lo he puesto aquí en el chat origin main, pero sí, gracias Emilio. Al final es equivalente.
(43:47) Ya si nos lo pondré en las instrucciones e actualizado. Ah, genial, Carlos, que con esto ya funcionará. Okay. Pero bueno, si no también con este otro método de añadir ficheros ya este problema se se evita. Eh, vale, pero okay. Entonces, ahora aquí en en el repositorio tengo los dos ficheros, pero si ahora vuelvo aquí a a la terminal, yo uso el comando LS, que es simplemente para ver que hay dentro de de esta carpeta prueba uno.
(44:20) tengo aquí los dos los dos ficheros también porque como bueno, yo lo creé directamente en ya dentro de la carpeta, ¿no? Pero si por ejemplo lo habese creado desde otro sitio, pues no aparecería. Vamos a hacer la prueba. Yo en vez de ahora tener aquí, vamos a hacer un tercer fichero, prueba tres. Lo voy a crear aquí. en el desktop. Bueno, aquí un poco el desastre que tengo de ficheros, pero bueno, voy a llamar a este fichero prueba tres puntos de pist añadir como como lo hicimos
(45:11) antes, ¿vale? Y perdonar, antes de ir a ese vimos el comando no hay el git push es para hacer de de local a la nube. Pero si por ejemplo queremos de la del GitHub remoto de el de la nube hacer una copia en local, sería en vez de push pues con las puertas al revés. Hacemos de pool y eh vemos que e a no sé por Ah, okay. No le gustó que claro, porque al final creo que lo que pasó tengo tanto una copia local como la remota y bueno, los errores horribles de Git
(46:05) aparecieron antes de de lo que hubiésemos querido. Eh, perdón, déjame hacer prueba. A ver si voy a ver primero si funciona este y si funciono ya lo explico. Perfecto. Vale. Okay. Entonces voy a hacer aquí un arreglo rápido, no muy de git, pero simplemente voy a eliminar este el fichero en local que tenía, que es con este comando RM de remove, espacio y el nombre del fichero. Entonces, eliminé el fichero y ahora cuando hice el git pull sí que me pudo
(46:55) agarrar este fichero de la nube de GitHub y me hizo la copia aquí. Ahora sí volvemos. Ya vuelve a estar el fichero aquí, eh, pero copiado desde la nu. A ver, perdón, fue un poco confuso. Vamos a dejar esto así. Si ahora añadimos el fichero este de la prueba tres que tengo en otro repositorio a la a la nube de GitHub, vamos a añadir aquí otra vez. Vamos a add file, a upload files y voy a arrastrar el fit aquí.
(47:42) Vale, ya tenemos aquí el fichero prueba tres. Ya vamos por el tercer commit. Comit changes y vale, ya tenemos aquí prueba tres. Okay, volvemos a la a la terminal. Como si aquí solo tenemos prueba uno y prueba dos, no hice el error de crear el mismo fichero en local. Y ahora hacemos tipol otra vez y también salo aquí a este mensaje de que se copió también este fichero prueba 3 txt. Y si hago otra vez el comando LS para ver qué tenemos aquí, me salen estos tres
(48:32) ficheros de texto. Vale. Okay. Más o menos hasta aquí. E ah, sí, sí. Es importante, así que se que es un poco confuso y hay muchos pasos, por eso se dieron las dos opciones, eh, para ir probando. Y si veo aquí este comentario de Andrea de modificar los nombres de los ficheros. lo creamos, podemos hacer una prueba y va a poner un ejemplo de cambiar el contenido de del texto, pero eh claro, si se cambia el nombre del
(49:24) fichero eh puede ser un ejemplo que igual es un poco más eh confuso porque al cambiar el nombre del fichero hay que hacer dos tipos de es como que estamos creando un fichero nuevo y también eh destruyendo un un ficher. Entonces, habría que hacer como un git ad un git delite e igual es un poco para mostrar aquí los comandos es un poco más eh confuso. Entonces sí, respuesta corta sí se puede.
(49:57) Igual es un poco confuso mostrarlo ahora, pues puedo eh mostrar un ejemplo más adelante o enviároslo por el chat. Yo creo que es más sencillo si intentamos cambiar el contenido de uno de de estos ficheros. Si yo vuelvo ahora aquí a mi carpeta de git, eh prueba uno, voy a abrir el s eh este último, el prueba tres. Okay, vale. Aquí un chiquitito. Okay, voy a poner la mundo. Y ahora voy a añadir aquí al final. Adiós. Y lo guardo. Vale, ya he modificado este este fichero, lo he guardado. Hm.
(50:44) Va, voy a cerrar aquí mi visualizador de de texto. Y ahora hay que volver a hacer lo mismo que antes, ¿no? Vamos a hacer eh git ad prueba 3.txt. Le doy al enter y ahora hacemos git permit men m y un mensaje eh poner modificación texto. Okay, enter. Y ahora, como decía antes, con un git push, eh, debería funcionar. Lo ves aquí cuando hemos hecho el git commit, nos sale de un fichero cambiado y aquí el título del del commit, así que todo okay, no hay problema.
(51:35) Y ahora voy a hacer git push enter. Y bueno, eh esto significa que todo sale aquí mucha información, pero básicamente no s ningún eh mensaje de error. Entonces, si ahora yo vuelvo aquí a mi carpeta, a mi repositorio online, bueno, aquí no me aparece el cómic, voy a actualizar la página y ahora sí ya sale el último comita aquí que hicimos de modificación de texto. Y si yo le doy aquí al al fichero este de prueba te, ya nos aparece aquí. Hola mundo.
(52:30) Adiós. Okay. Ah, vamos a hacer una última prueba porque si ya también nos queda un par de cosas aún, pero bueno, esto del guito es un poco confuso y tedioso al principio, pero eso todo el mundo nos pasa paciencia y ir probando poco a poco. Y ahora vamos a hacer una prueba al revés. Vamos a modificar aquí online. Le he dado al fichero este de prueba 2.txt. Y si queréis modificar el fichero directamente aquí, le podéis dar aquí a este icono del lápiz que sale edit this
(53:09) file. Y ahora aquí yo ya puedo escribir. Entonces a este fichero vamos a poner también y luego pues adiós. Y le damos aquí a connectes y sale un poco diferente de antes, pero tranquilo. Sale el mensaje y te pone update prueba dos. Te sugiere ya el el título del del comit. Lo voy a dejar este por defecto. Aquí sale el email y ya. y le damos a commit changes.
(53:49) Y igual que antes, ya nos ha hecho el comit y el y el push todo de uno. Como veis, aquí ya nos sale el título de este último comit aquí, update prueba dos. Vale, y ahora vamos a hacerlo aquí en la terminal. Volvemos y e si hacemos git pull, como decía, si es siempre es como push es de local a remoto y pull del remoto de la página web a local. Okay, gitpter. Y eh vale, otra vez aquí sale una retaila de información, pero que lo que os interesa es que todo que sale aquí el prueba dos que se han hecho aquí unas
(54:37) modificaciones y listo. Vale, entonces si ahora voy a mi carpeta, ya veo aquí el fichero prueba dos, como veis, tengo aquí también el mensaje de hola mundo y adiós. Entonces ya para que veáis que se puede hacer de de ambas eh maneras. Lo ideal es hacerlo siempre desde la terminal, porque ahora para hacerlo más simple lo hemos hecho con un fichero texto, pero esto es útil para ficheros de código, de Python, de notebooks.
(55:09) Y estos normalmente ya se editan desde eh desde local, ¿no? Pero bueno, para que veiráis un poco los dos ejemplos. [Música] Ah, okay. Eh, veo que Emilio contestó lo de lo de los nombres de los ficheros. Gracias. Eh, no sé si a ver, creo que ya es mucha información relacionada con el Git. E lo importante es que tengáis estos comandos básicos que pasé antes en mente. Lo volveré a a pasar. con el main aquí en vez del master, pero otra vez, ya que si lo hicisteis una vez, eh, no hace falta eh
(56:01) hacerlo más. Luego el git push os debería haber funcionado directamente y eso y si igual para algunas personas fue difícil de seguir, pero lo importante que que probéis a ver qué es lo que va mejor y si hay cualquier duda nos la podéis poner por aquí por por ahora invertida y os diremos. Pero bueno, espero que en general o al menos o la opción de la terminar o la opción aquí directamente de la página web que vimos eh funcionase.
(56:27) E no sé si hay alguna última duda antes de pasar a a Júpiter y ya luego Yerí os enseña las primeras cosas de Python. Pero si yo de verdad recomendaría el probar, haceros un repositorio prueba uno, un prueba dos, lo intentáis, si os da error lo borráis, volvéis a intentar, eh, tenéis información así, disculpa, se me olvidó pasar esto. Eh, igual que Emilio enseñó ayer que hay esta información sobre el Júpiter, tenéis aquí un montón de información sobre
(57:14) sobre el GIT. hizo una compañera Julia el año pasado. Os dejo aquí el enlace y aquí podéis ver muchísima, hay muchísimos detalles que se puede ir mirando poco a poco. Y sí, para borrar con con a través de git es con git, si no recuerdo mal es git del, ¿no? Git eh remove. Es que en general por suerte no eh creo que git RM git remove. Okay. Sí, sí. Y sería igual, sí, eh, sí, pues sí, perdonad, no es git de es git eh remove.
(58:14) Y luego también haría falta hacer el git commit después y push, o sea, funcionaría igual el un una eliminación, un git remove, simplemente eh como vemos aquí, esto en vez de del AD sería el RM y luego también haría falta hacer el git commit. y un git push después. Okay. No sé si hay alguna duda más, pero eso lo repito muchas veces porque el guit al principio creo que bueno, no sé y Emilio qué tal, pero se hace un poco cuesta arriba al principio y luego poco a poco eso al menos los comandos que usas a diario, ¿te acuerdas? Yo esto por ejemplo de kit
(59:10) remove ya ni me acordaba. definitivamente eh intimidante y confuso. La primera y la segunda y la tercera vez y la cuarta. Okay. E si si queréis podemos hacer aquí la última prueba con esto que comenta el compañero Paco. A ver, a hacer así también lo tenéis. a mano. Ah, sí, que sería lo del lo del Redmi, ¿vale? El Redmi file. E ahora, bueno, lo vamos a hacer eh manual, pero si nos sale aquí como una explicación como si fuera un índice, ¿no? Como una parte introductoria, que básicamente es
(1:00:04) este texto que me aparece aquí en el repositorio, este que os pase de ejemplo, porque yo tengo aquí un un ritmi. Mmd. y sale aquí esta información. Entonces, en vez de un fichero TXT, os voy a pasar uno MD, pero no debería haber lo deberíais poder abrir igual con fichero. TXT. Okay, entonces voy a ir aquí, voy a copiar este fichero prueba.1 y lo voy a llamar e readm. que que sí se me cambie el mate y a ver, lo voy a
(1:00:48) abrir. Vale, bueno, se me abrió a mí con otras con otro editor de de texto distinto. A ver que no me lo perdonad que no me lo sabe editar ahí hacer el texto más grande. Vale, lo voy a abrir con los lites. Vale, ponemos aquí el remit.md. Os voy a copiar aquí las las exciones que sale que puse aquí. Vale, puedo. Voy a cambiaros aquí el mi máster desfasado por el por el main y tenéis aquí todos los pasos.
(1:01:37) Simplemente añadir esto para que salga como bulletps. Okay, bueno, lo guardo saludada otra vez. [Música] Eh, me funciona. Añadir R. Vale, vamos aquí a la página. Vale, y como veis, ya me aparece aquí el Ritm y ya GitHub lo ha sabido reconocer como un Ritmi y aparece aquí las las instrucciones en el en el
(1:02:44) repositorio. Ah, voy a pasar también el fichero aquí por el por el Discord y así también será una primera prueba. Si conseguís añadir eh el fichero del Discord al GitHub, ya genial. Okay, también está bueno, si a alguien le da problemas para abrir el un fichero pund, el markdown en el sistema operativo Windows también que que lo diga.
(1:03:18) Si no, como veis ya el Discord también os visualiza el fichero, así que si no también podéis copiar. copiar los datos directamente. Ah, okay. No sé si hay alguna duda más, pero creo que es mejor que avancemos, que ya he pasado mucho rato. Em, y vamos a pasar a la parte de Júpiter, que bueno, ya Emilio mostró un poco ayer. Ah, y la idea será para abrir ahora lo siguiente es el Júpiter Júpiter Lab.
(1:03:51) Eso y si hay cualquier más dudas de git que tengáis ahora, ponerlas si queréis en el chat ahora y lo vemos más tarde al final de después de lo de Python o si eso o vemos si al final nos da tiempo podemos ver alguna otra otra duda que tengáis. Eh, pero sí, la idea ahora será abrir el Júpiter Lab. Eh, los que estáis en Windows lo podéis hacer desde Honda, eh, la interfaz de Anaconda que instalasteis con Emilio, e, si vamos aquí a la terminal, a ver, voy a darle estos ¿vale? Voy yo aquí en la misma parte donde estábamos aquí haciendo
(1:04:36) todos los comandos. Voy a escribir Jupiter. A ver, perdonad, voy a cerrar esto. Problemas que lo ten abierto ya. Vale. Okay. Volvemos en la terminal donde estamos haciendo todo lo de git Júpiter espacio lab. Enter. Y ahora se abre aquí. Y ahora aquí veis que se me abrió. Bueno, aquí a mí me salen muchísimas cosas así porque ya en mi ordenador tengo muchos eh environments que también lo comentaba ayer Emilio.
(1:05:21) Dice, lo comentaba Emilio ayer que simplemente son tengo diferentes setups con diferentes versiones de Python y paquetes instalados, pero bueno, no hagáis caso. Nos debería salir, yo creo, solo uno aquí, pero si podríais decir a todo el mundo le pudo abrir e el Júpiter Lab, ¿okay? Desde la terminal o desde Anaconda y si lo podéis comentar en el chat si también sentimos que os puede ir funcionando todo. Vale, genial. Gracias, eh, chicos, por comentar.
(1:06:03) Eh, a ver si hay un par de personas. Genial, gracias. Okay. Mientras va comentando el resto de personas, eh, también lo que está viendo el Jupiter La Jupiter Lab, Jupiter Notebook, no hay muchas diferencias, pero por ejemplo si lanzáis el Jupiter Lab eh podéis también lanzar la la terminal desde aquí. Sale también una pestaña y sale un poco parecido aquí prueba uno, como lo que tenía en la otra pantalla eh aquí que estaba usando en en mi
(1:06:55) terminal, así que es otra opción también para lanzar la la línea de de comando. Okay, ya. Bueno, me sorprende aquí lo que comenta eh Carlos, que tuviste como que activar aquí el como si fuera un environment, pero bueno, funcionó, así que genial. Y vale, y vamos a crear un Júpiter Notebook. Entonces, le podemos dar aquí en el JT lab aquí al símbolo de más. Y como veis, una opción es el notebook y yo le voy a dar aquí a creo que os debería salir a
(1:07:43) todos esta opción de de Python 3 y nada y ya y nos sale esto, ¿no? Entonces, a ver, pues ahora sí aquí en el aquí os voy a pasar enlace. Aquí hay muchos detalles que también puso Emilio donde ya comentó ayer sobre sobre Júpiter y que es un y que es un Jupiter Notebook. Y al final eh vamos a ver aquí este ejemplo que que compartió, ¿vale? Y como veis, al final es es un un títer notebook, es un cuaderno, ¿no? Nos permite tener a la
(1:08:32) vez tanto códico como también eh texto, eh ecuaciones, incluso también las figuras nos salen directamente aquí también. Entonces, nos ayuda realmente a tener como un cuaderno estructurado donde podamos tener eh todas las diferentes partes de nuestro de nuestro trabajo y y poder poner comentarios, ¿no? O sea, permite si hacemos este código que nos salga esta figura, eh poner aquí un comentario en plan, vemos
(1:09:09) una correlación en esta gráfica de esto y podemos tenerlo. permite, la verdad hacer muchas cosas distintas, pero bueno, vamos a empezar con un ejemplo sencillo y y nos permite también escribir en este lenguaje que es mar, pero bueno, podemos poner un texto sencillo como título. Eh, aquí podemos escribir eso como si fuera nuestro fichero TXT. Podemos escribir igual.
(1:09:39) Aquí podemos poner también para una lista e punto uno, punto dos. Y cuando ya acabado de escribir lo que es lo que quiero, le puedo dar a, en mi caso es shift. Primero hay que decirlo, por ejemplo, esta celda estaba puesta aquí como código, pero si le damos a a markdown, ya de cuando le damos al enter e pues ya nos nos muestra aquí el texto. Entonces vamos aquí otra celda y si está como código puedo hacer aquí 1 + 2 y aquí ya tenemos esta parte de de código, ¿no? Entonces nos permite aquí si
(1:10:32) definimos eso, todas estas diferentes como cuadrículas se llaman como celdas dentro de nuestro cuaderno y pueden ser tanto código como markdown o bueno, hay otra opción eh RAW que yo personalmente pues nunca nunca usé, pero lo que vamos a ver en general en el curso son estas estas dos opciones, ¿okay? Entonces, aquí donde es eh código puede ser diferentes lenguajes de de programación.
(1:10:57) Eh, el nombre Júpiter actualmente y y bueno, la luego lo juntan, pero viene de el lenguaje programación eh Julia, la parte P es de Python y la R final es de bueno, pues de programar en R. Entonces, esta celdad de código permiten em estos tres diferentes lenguajes de programación y además también permite pues los comandos que estamos usando desde la terminal, si os acordáis pues había este de del ls para ver qué hay dentro de nuestra carpeta.
(1:11:35) También se pueden hacer si hacemos el signo de exclamación y luego ya podemos escribir como si fuera terminals. Y veis, me hace lo mismo que me muestra aquí eh los ficheros que tenemos. Entonces, e también, como se comentaba ayer, e en el Júpiter Notebook solo saldría esto de aquí y en el Jupiter Lab también nos da tiene la ventaja que podéis ver aquí todo la lista de ficheros.
(1:12:14) Entonces, bueno, esto también podéis ir probando a ver eh jugar un poco con un Júpiter Notebook, ir haciendo pruebas. es también la interfaz que usaremos para para programar eh en Python y pero también existen muchas otras. Eh, en mi caso, pues hay compañeros que igual simplemente desde el editor de texto modifican un fichero de Python y ya lo usan desde la terminal. Eh, hay otros que usan otra interfaz que se llama Spider, pero el Jupiter Notebook eso nos
(1:12:51) permite eso, correr aquí directamente eh código en Python en ver los resultados, poner comentarios y y eso. Y está el lenguaje MARDown, que creo que ahora no vale la pena entrar en ellos. Pasaré un enlace para que podáis ver un poco qué se puede hacer, pero bueno, si cogemos esta celda aquí y le damos a a que sea Md, una cosa, por ejemplo, que permite es poner el el título, ¿no? Entonces, si yo almohadilla espacio, puedo poner aquí
(1:13:27) un título, luego dos almohadillas sería un subtítulo y luego puedo poner texto otra vez, bla, bla. y le doy ahora shift enter. Y como veis, ahora me sale un poco un texto más estructurado. Entonces hay muchas cosas que que permite este lenguaje de markdown. Eh, si lo queréis explorar también había aquí, a ver, a que tenéis aquí también en los materiales de la aula invertida esta información sobre MACD.
(1:14:04) Os paso aquí el enlace y podéis probar diferentes eh eh maneras de poner texto aquí en vuestro en vuestro Júpiter Notebook, que es útil a la hora, como veis aquí en este ejemplo de de Emilio también eh desde un poco explicar eh pues el texto y tenéis aquí toda esta explicación, luego poner tablas y así eso. Bueno, a mí personalmente me resulta útil en los en los Jupiter Notebooks para cuando voy haciendo código también poder poner comentarios o lo que o con mi interpretación de las
(1:14:48) figuras. Y ya. Y por último, solo nos queda guardar este primer Jupiter Notebook, bueno, que ya se ha guardado por defecto con este título de untitle, pero podemos hacer aquí clic derecho y cambiarle el nombre. Y vamos a ponerle notebook, el cuaderno uno. Le doy al enter y ya lo tenemos aquí guardado. Y bueno, si lo habéis hecho dentro de vuestra carpeta, eh, para que no os olvidéis, os acordéis, vamos a hacer el último, los últimos
(1:15:27) comandos. Em, vale, si queréis, si habéis conseguido abrir el Jupiter Lab para no cerrar eh de aquí de la terminal el Jupiter Lab, ya que lo vais a usar con Jeri, lo podemos hacer desde aquí. Y vamos a hacer eh boot ad y ponemos aquí el notebook 91, el git commit. A ver, igual se ve un poco pequeño, ¿vale? Imagínate mejor. Vale, git comit M primer notebook y por último push. Y ya. Y ahora sí volvemos otra vez aquí a nuestro repositorio.
(1:16:16) Hay que, yo al menos siempre tengo que actualizar la página para que se vean los cambios. Si es un fichero muy grande os puede pasar que tarde tarde un poquito en actualizarse. Y ya vemos aquí que también tenemos el el Júpiter Notebook. Bueno, esto es como una muy breve introducción, es poco a poco ir probando [Música] y con esto, bueno, ya podríais pasar a hacer ya aquí en el notebook ya un pequeño Python básico con Jeray.
(1:16:57) Eh, no sé si hay alguna duda de Júpiter de mientras e no. Bueno, te comento, Laura, Cristina está teniendo problemas, pero creo que es porque Cristina porque no tienes el Python instalado. Puede ser. Porque si no tienes pip, entiendo que es que el Python no está instalado de antemano. Podría ser. Ya creo que ayer lo instalaron, lo deberían haber conseguido instalar con Emilio en vez de PIP con Conda.
(1:17:35) Veo que Emilio está está escribiendo. Ah, vale. Bueno, ya que estamos en el tema e lo único que se me ocurre porque está claro que sí creaste un entorno e de Conda que se llama Jupiter Lab. Pueden ver que al principio de la línea de de en la terminal aparece el nombre del entorno y ahí aparece. Mi sospecha es que e a pesar de que creaste un entorno, no se no incluiste Júpiter y otras cosas por alguna razón.
(1:18:13) Eh, entonces eso es lo bueno, estaba escribiendo aquí. Lo lo que se me ocurre es, pero eso va a inundar el el chat, es el comando con list l para ver qué está incluido en el entorno. E no sé cuál es la la manera más óptima de de investigar eso, sin paralizar mucho eh con con podría poner con list Jupiter, si no me equivoco, y le saldría, ¿no? Si lo tiene instalado o no. Lo puedo mostrar yo aquí en la terminal, que creo que es útil hacer solo un ejemplo básico de esto y luego eh ya sí le voy a quitar un poquito más
(1:18:55) de tiempo a Jeraico, perdón. Eh, si si volvéis aquí a la terminal donde queráis, aquí en la en vuestra línea de comando o en el ah o en el Jupiter Lab, aquí si ponemos con espacio list saldrá todo lo que tenemos instalado, ¿no? A mí igual como estoy en me salen muchas cosas que tengo ya instaladas por defecto y salen todos los paquetes instalados y aquí es donde debería salir si alguien más tenido problemas con
(1:19:25) lanzar el Jupiter Lab. Eh, ves, me sale Python, por ejemplo, y está interesante porque ves también qué versión tienes instalada y bueno, como dije, hay muchas cosas instaladas. ¿Veis? Aquí sale Jupiter Lab. Entonces, si no os aparece Jupiter Lab aquí desde la línea de comando, ¿no? Habría que hacer el el Conda Instal Jupiter Lab. No s nada. Okay, ya pues sí hay que hay que instalarlo e que no sé si Bueno, ahora en memoria no sé si haría falta con Conda Instal
(1:20:12) Jupiter Lap o mejor como con el Conda Force que comentabas ayer en Emilio igual es mejor. Eh, ¿puedo mirarlo rápidamente? Okay. ¿Alguien más tiene un problema similar? Porque esto es un problema muy particular, eh, y sí podemos ayudar, como decía, sospecho, que sencillamente al crear el entorno se creó un entorno vacío sin nada. E y no sé qué prefieren, si lo abordamos directamente aquí paso a paso, eh, en
(1:20:54) común o si tratamos de ayudar a Cristina, perdón, si a Cristina e por separado mientras Laura continúa. Sí, yo creo que como es si eso si personas tienen el problema igual que Cristina, igual lo podemos hacer en común. Ah, veo que aquí el comentario de Gracias Carlos por la sugerencia. Eh, lo que yo recomendaría es hacer las cosas de la manera en que hemos estado mostrando, o sea, la manera en que lo demostramos el lunes, que es con Ondra.
(1:21:25) Eh, es posible, Carlos, el la sugerencia que haces y gracias por hacerla de nuevo, eh, es no es incorrecta, definitivamente es algo normal de Python, pero podría causar confusión porque no es exactamente lo que recomendamos el lunes. El lunes recomendamos hacer las cosas a través de Conda. Sí, tanto con PIP y cona se puede instalar cosas, pues sí que es verdad que puede llevar a problemas el instalar cosas tanto con Conda como como PIP, así
(1:21:55) que pero sí, eso es correcto. Igual es solo por ser consistentes intentar evitar problemas, pero si si reemplazamos el pip 3 con simplemente conda, tenemos ahí el comando visto también. Perdón. Sí, sí. Okay. Pero bueno, yo creo si no hay nadie más que tenga este problema igual si quieres Emilio, porque como ahora ya pasa puedo estar yo pendiente del chat para Jeray y igual por el chat privado de Discord o
(1:22:35) o por aquí en un hilo se puede seguir hablando de esto. Bueno, no sé si hay cualquier otra duda de Júpiter, es solo una interfaz. Pero si no pues a ver, voy a dejar de compartir pantalla y te paso la palabra Jeray. Sí, si no les he agobiado ya mucho con el kit que ya problemas. Sí. ¿Qué tal están? ¿Quieren hacer? No sé, lo propongo. No sé, Emilio, tú cómo lo piensas.
(1:23:13) Si dejamos 5 minutos para que haya un pequeño descanso para o no sé si están de acuerdo 5 minutos de descanso o si prefieren seguir. Parece buena idea. Eh, minutos de descanso. República 5 minutos. Perfecto. Ahí bueno, 5 minutos simplemente y y así y así seguimos. Son las 28, pues a las I35. Y mientras pues imagino que Cristina puede ir mirando si todo bien. Vale, pues ahora en 5 minutos retomamos. Vale.
(1:29:28) Ay, bueno, te minutos cuando iniciemos solo para hacer el recordatorio de que el listado de asistencia. ¿De acuerdo? Eh, realmente yo tengo ya las 35, o sea, que si quieren empezar eh, si están todos pues empezamos. Gracias a todas y a todos los participantes. Un amable recordatorio de la importancia de llenar el listado de asistencia. El enlace del formulario fue colocado en el chat de Discord. Adelante, Jeray.
(1:30:08) Muchas gracias. Eh, bueno, como no estuve yo ayer, eh, primero, buenos días a todos y voy a intentar pues introducirles un poco en el en el uso de Python, eh, de manera sencilla, espero. Y y bueno, eh me presento, soy Santana Falcón, soy océanógrafo y llevo unos 7 años trabajando con con Python. Eh, y aún así no me considero un un usuario experto y será eh, o sea, la el motivo por el cual digo esto es porque ya verán que que las posibilidades de Python son eh pues diría casi casi
(1:30:56) infinitas, son tiene una gran cantidad de de uso eh, y entonces por mucho que uno empiece a usar este lenguaje, pues siempre siempre se ve limitado, ¿no? Siempre siempre hay cosas que aprender y y cosas a las que a las que ponerle atención. Eh, la importancia de Python eh por un lugar eh por una parte es uno de los lenguajes más utilizados en ocenografía y en ciencia y aquí les traigo la bueno, un índice de los lenguajes más utilizados en la actualidad.
(1:31:26) Y en abril de 2025, como ven, Python estaba en el en el número uno de los lenguajes más usados a nivel a nivel global. Eh, y fíjense que tenía el doble de eh de usuarios que lenguajes como el C++ o el el o el Java. Así que imagínense la importancia que tiene el Python eh hoy en día. Y quisiera empezar el curso. Eh, pues primero eh voy a utilizar una presentación que ya utilizó una compañera Carolina Castillo hace hace unos años en la en las ediciones pasadas porque creo que está bastante bien organizada.
(1:32:07) Y bueno, pueden interrumpirme en cualquier momento, ya sea por el chat de Discord. Eh, le ruego a Laura que esté un poco atenta por si yo me despisto y y si no simplemente eh abran el micrófono y e interrúmpanme que que no voy a tener ningún problema. Vamos, que así la clase es más dinámica. Eh, ¿se me oye bien y todo correcto? Sí, genial. Si no fuese así. Vale, perfecto. Bueno, pues empezamos entonces.
(1:32:45) Eh, en mi caso, como les digo, vengo de de estar unos 7 años utilizando el Python y me gustaría saber si alguno de ustedes lo utiliza ya en la actualidad, si pueden ponerlo por el por el chat o si vienen de otro lenguaje. En mi caso yo vengo del Matlab. Entonces, cuando cuando descubrí el el Python y cuando descubrí las maneras de trabajar, sobre todo en en Notebook, en Jupiter, Jupiter Lab o Jupiter Notebook, pues la verdad que me ha facilitado
(1:33:17) bastante la tarea y veremos el voy a intentar trasladarles el porqué de de esta afirmación. Eh, vamos a utilizar el Jupiter Notebook o el Jupiter Lab que acabamos de de explicar. Y como ven, lo interesante aquí es que podemos separar en en casillas, en celdas, nuestro nuestro código. Entonces, para mí, al menos, es una manera bastante bastante sencilla de trabajar, porque eh podemos ir probando nuestro código, ver cómo funciona, hacer pruebas, eh eliminarlo, ver también
(1:33:56) la la las gráficas en el en el mismo en el mismo notebook. Y eh una vez tengamos un código eh bien realizado, bien formalizado, podemos bien exportarlo en un formato Python si lo queremos utilizar en otro en otra interfaz, ya sea el Spider o sea, ya sea directamente eh sobre una terminal o incluso eh compartirlo con otros colaboradores para que ellos no nos hagan comentarios, nos modifiquen el el script o el programa, etcétera, ¿no? Entonces, para mí la la opción de Jupiter Notebook es una opción bastante
(1:34:39) bastante interesante para el uso de de en este caso de Python, pero también admite otro otros lenguajes, como ya se se ha comentado. Bueno, volviendo a Python, eh la idea de usar la programación, ¿no? La idea de usar cualquier lenguaje de programación, en este caso Python, es la de intentar descomponer problemas complejos en pequeños problemas que sean más eh sencillos de de resolver, ¿no? Esta es la idea de de de usar Python y
(1:35:11) es la idea que que vamos a utilizar también en este en esta hora que que voy a estar con ustedes, ¿no? La de ver, procesar y graficar datos. Así que iremos paso a paso, iremos eh poco a poco y vamos viendo eh las utilidades de de Python. Bien, a diferencia de otros eh lenguajes, como por ejemplo el el Matlab, ¿no?, en el que está todo cargado, el Python, siguiendo un poco el ejemplo que nos dejó Carolina en su momento, podríamos eh asimilarlo a una a
(1:35:44) una cocina, ¿no? Para nosotros el Python será una una cocina en la que hay muchos instrumentos, muchos utensilios que componen nuestra nuestra cocina, ¿no? El Python eh por sí solo necesita cargar esta estas estos utensilios, ¿no? Estas librerías, como llamamos nosotros en Python. Así que si podemos abrir un un notebook o un Jupiter Lab, eh podemos empezar a cargar eh librerías y a utilizar el Python.
(1:36:22) Yo ya tengo ya uno cargado de antemano, pero si pueden ir ustedes cargándolo, eh, les espero. Vale, tenemos todos un notebook abierto. E por aquí un momento el el Discord, ¿qué pasó? No sé si tú lo tienes abierto. Eh, sí, lo tengo abierto, pero no veo que nadie escriba. Okay, ahora, ahora sí, sí. Perfecto, perfecto. Vale, pues vamos entonces a empezar. Como les decía, seguimos con el ejemplo del de la cocina. Eh, esta sería la imagen, ¿no?, que
(1:37:30) tendríamos en la mente de del del Python nada más abrir el notebook, ¿vale? de simplemente un cuaderno en el que no tenemos eh todavía nada. Hay que empezar a cargarle esos utensilios, ¿no? La manera de cargar esos utensilios llamados en el caso del Python librería sería con el comando import, ¿vale? Le damos a importar las librerías. Yo las tengo aquí bajo, aquí debajo ya, eh, con mi pequeñita chuleta para no olvidarme de nada.
(1:38:09) eh import y vamos a importar las librerías pues básicas, ¿no? Nampi sería la librería eh eh básica, que es como la librería en la que vamos a a hacer cálculos, sería como nuestra pequeña calculadora y MAPL lip, que sería la librería quizás la más conocida para el tema de de gráficos en Python. Y como ven, los comandos que utilizo es importar una librería. el nombre de esa librería y con el comando AS lo que hago es que eh le digo a Python que cada vez
(1:38:45) que yo escriba eh NP eh me cargue la librería eh Nampi y cada vez que yo le diga PLT me cargue la librería Maplotlip.pot. NP y PLT son convenciones. Obviamente podríamos eh llamar a como voy a hacer ahora eh importi como yeri. Pero lógicamente es mucho más sencillo acordarse de que hemos cargado la librería Nampi como NP que si le ponemos un nombre que no pues que no que no nos que no nos diga nada, ¿no? Vale, cargamos la librería y ahora
(1:39:28) cada vez que pongamos NP, Python va a comprender que estamos eh utilizando la librería Nampi. ¿Cómo utilizamos las librerías? NP punto y una función de de que tengamos dentro de la o que exista dentro de la librería, en este caso Namp. Eh, podemos utilizar el tabulador y nos va a informar de eh las funciones que están disponibles para cada eh librería. O si pusiésemos mayúscula, ¿no?, la flechita y el tabulador, lo que nos va a dar es información acerca, en
(1:40:12) este caso, de la librería, ¿vale? Una documentación. Y si directamente pusiésemos alguna función y de nuevo le diésemos a eh mayúscula tabulador, al mismo tiempo nos pondría un poco la información sobre eh sobre esta función en concreto, cómo utilizarla, qué es lo que vamos a obtener, eh y qué lo sí, qué es lo que vamos a obtener y algunos ejemplos. ¿De acuerdo? Todo claro hasta aquí, ¿verdad? Eh, me preguntan dónde lo abro.
(1:40:55) Eh, se refiere a dónde abre [Música] el Podemos hacerlo en el directorio raíz o en un en un directorio que tenga temporal para para el curso, ¿no? Es solamente un ejemplo, con lo cual no va a importar dónde lo dónde lo abramos, ¿vale? lo podemos abrir en cualquier directorio. ¿De acuerdo? Pues volvemos a nuestra eh presentación. Aquí simplemente son algunas cositas que se puso en su momento eh para manejar el
(1:41:31) notebook y además de de utilizar Nampi eh dentro de de Python, ya por sí solo podemos utilizarlo como una calculadora. No hace falta cargar todas las librerías, eh, sino que Python por sí solo también funciona como una, eh, como una calculadora. Tiene unas funciones que están ya dentro de de Python. Es un poco contradictorio con lo que les dije antes, pero lo que tenemos que entender es que Python viene con lo
(1:42:04) básico, eh utilizar como una como una eh comput como una calculadora eh algunas utilidades para visualizar cosas en pantalla como los comandos print o eh algunos otros comandos básicos. Cuando ya queremos avanzar y queremos hacer algunos cálculos eh más complejos o manejar ciertos datos, ya tenemos que importar estas librerías. Entonces, volviendo a la presentación, eh simplemente para que vean eh les invito a hacer este ejercicio, simplemente para que vean la
(1:42:38) capacidad de de Python para eh funcionar como una calculadora. Como ven aquí lo que vamos a hacer es definir una una variable, en este caso masa. Eh, perdón, porque en el en el Discord no me pregunta Jesús que no tiene el código, perdón, la la librería Nampi. Efectivamente, lo podemos instalar eh así podemos instalarlo. debería haberse instalado en como lo indicó Emilio, pero si no está instalado lo pueden instalar así. Seguimos.
(1:43:27) Si pueden si podemos entonces hacer este ejercicio. Como ven, tenemos una una variable que llamamos masa. El igual nos indica que vamos a darle un valor a a esta variable y eh con edad hacemos lo mismo. Vamos a hacerlo así. masa es 47,5 edad. Vamos a ponerle 122, aunque entiendo que no son años. Y eh podemos variar estas eh variables que estas estas variables sí que hemos creado, simplemente añadiendo eh funciones matemáticas.
(1:44:15) Masa va a ser igual a masa por simplemente utilizando el símbolo de la multiplicación por dos. edad igual a edad, que es la variable que acabamos de crear partido, voy a hacerlo exactamente igual que está aquí. Bueno, puso menos, pero podríamos haberlo dividido – 20. hacemos las operaciones y luego gracias al al comando que ya viene por eh que viene eh de manera nativa en Python print. Lo que nos va a permitir print es imprimir lo que queramos en pantalla. Podemos imprimir masa y edad.
(1:45:07) La masa inicial eran 47,5. como hemos calculado, como la hemos multiplicado por dos, será diferente igual que la edad. Efectivamente 47,5* 2 solo 95 que ahora nos indica de masa y eh la edad la hemos le hemos restado 20, con lo cual ya tenemos el valor final que es 102. Otra de las funciones que vienen por defecto en en Python es type, que lo que nos va a indicar es qué tipo de eh valor tenemos en cada variable o qué tipo de variable.
(1:45:39) masa eh como hemos visto, eh tiene decimales, así que será un float, mientras que edad va a ser un número entero, un integer. También podríamos crear una nueva eh variable que le vamos a llamar name. Le voy a poner mi nombre. Poniendo comillas, lo que hacemos es indicar a Python que nuestro que nuestra variable va a ser no va a ser número, sino que va a ser string, va a ser eh la otra eh el otro tipo de de valores
(1:46:27) que puede eh leer Python. Entonces, si ahora en type pongo en la nueva variable name, veremos que es una string, ¿vale? Sr. Así que float, integers y string serían los tres tipos de valores que admite Python y los tres tipos de valores que podemos combinar en el en el comando print. ¿De acuerdo? Perfecto. No sé si hay algún otro comentario. Vale, parece que no. Seguimos. Eh, vamos a ver, además de de valores
(1:47:20) simples, podemos crear también eh eh una unas matrices. Para ello lo que voy a hacer es ya la cojo directamente aquí. es indicarle la el tamaño que va a tener nuestra nuestra matriz y utilizar la eh la librería Nampi. Nampi tiene una función que se llama random, con lo cual va a ponernos eh números al azar, que si damos a mayúscula y tabulador nos va a indicar justamente eso.
(1:48:02) y tiene una subfunción que en este caso es normal y lo que nos va a hacer es justamente pues darnos una distribución de números normales en nuestra función random que a su vez viene de la de la de la librería Nampi. lo hacemos y igual que antes imprimimos la variable eh en este caso a Vale, esta sería nuestra nuestra nuestra eh matriz. Como es un son valores random, son valores aleatorios, vuestra matriz no va a ser exactamente igual, pero eh pero tendrá el tamaño que yo le he
(1:48:56) dado aquí, que es 15 eh 2 1. Hasta aquí todo bien. Ahí Andrea parece que está escribiendo en el en el chat. Vale, exactamente, Andrea. Menos aquellas funciones que ya vengan por defecto en Python, como lo que les decía, como print o como type. Las funciones siempre hay que especificar la librería en la que está la función y luego un punto y luego eh la función que vamos a utilizar.
(1:49:31) Vale, volvemos a la a la presentación. Ya tenemos nuestras variables eh en integers, en float, en string y también una matriz. Y una cosa que hay que tener siempre en cuenta en Python, sobre todo para aquellos que vengan de otros lenguajes de de programación, es el es el orden. ¿Cómo contar en en Python? Python tiene la particularidad de que en lugar de empezar el primer eh dígito, en lugar de empezar en uno, empieza en cero, ¿vale? El primer índice es cero.
(1:50:14) Entonces se los puedo mostrar con con mi nombre, ¿vale? Ya antes definí la variable name, ahora le vamos a llamar nombre. y eh la variable nombre de manera normal tendríamos o no de manera normal, sino en otros lenguajes de programación empezaríamos con el uno, sería la y mayúscula, 2 3 4, o sea, que el primer print que vamos a hacer deberíamos dar debería darnos la a, ¿no? La letra A que está en este caso en la cuarta posición.
(1:50:56) Sin embargo, ya que eh Python empieza a contar desde cero, la y sería la que correspondería con el cero y a partir de ahí empezaríamos con la primera unidad. Entonces, en ese caso, en el caso de Python, pues cuando yo le diga que me devuelva el cuarto, la cuarta posición de mi de mi string, lo que me va a dar es una y aprovecho para eh decirles, aunque creo que ya Laura lo comentó antes, si podemos almohadilla, comentamos cualquier cosa que hayamos escrito en la
(1:51:30) en la celda y no se va a ejecutar. Lo que va a hacer Python es que lo va a pasar de por encima y no va a ejecutarlo. Hacemos el print y efectivamente lo que nos devuelve es la y que está en la posición número cuatro para la manera de contabilizar de Python. Esto parece bastante sencillo, pero tiene su tiene su aquel, ya que siempre hay que estar pensando que el primer dígito, lo que para nosotros va a ser el primer dígito realmente para Python es el cero.
(1:51:57) De hecho, si yo pongo aquí nombre cero, lo que me va a dar es el primer dígito, es decir, la y mayúscula. he comentado las otras maneras de de o las otras formas de llamar al a la a los elementos de de mi variable. Y ahora eh se lo quito y se los explico. Si nosotros ponemos nuestra variable y entre corchetes ponemos eh cualquier número eh precedido de menos, lo que nos va a hacer es ir al índice al último índice y empezar a contabilizar desde ahí.
(1:52:41) Si además añadimos eh dos puntos, lo que va a hacer es contabilizar desde el último índice hasta el índice -6. Con lo cual, en este caso, lo que nos va nos va a aparecer es pues mi apellido, ¿vale? los últimos seis índices de nuestra variable, en este caso una variable string. Si en lugar de utilizar el menos eh lo que hacemos es utilizar eh desde el principio, lo que vamos a a obtener es con el con el doble punto
(1:53:16) eh me va a contabilizar todos aquellos elementos que estén en mi variable hasta la posición número cinco. carbonisto número cinco de de Python, es decir, mi nombre. ¿Vale? Simplemente si cambiamos aquí me van a aparecer los primeros dígitos hasta los primeros elementos hasta el eh dígito que yo le que yo le ponga, tal posición que yo le ponga. Vale, perfecto.
(1:53:47) Perdón, a veces a veces me interrumpo a mí mismo, pero quiero mirar si hay alguna alguna novedad en la en el Discord. Eh, con nuestro con lo que les expliqué antes, con nuestro con nuestra matiz matriz, eh podemos también ver la las filas y la y las columnas de una matriz. En lugar de la matriz que cogí antes, que quizás es un un poco larga, les he preparado o tenía preparado aquí una matriz mucho más sencilla en la que voy a llamarla data y en la que en lugar de float o de integrers lo que voy a ponerle es string, en este caso simplemente números de la letras de la veces, ¿vale? si podemos ustedes
(1:54:44) hacerlo. También tenemos [Música] nuestra nuestra matriz eh data. Todos lo han hecho. No hay ningún comentario por el Discord y ahí, pero bueno, si algunas cosas se las puedo ir pegando por aquí también. Vale, perfecto. Bueno, pues tendríamos aquí nuestra nuestra matriz y eh la intención ahora sería seleccionar eh todas para hacerla primero a a Nampi y ver cómo en Nampi podemos también eh imprimir y seleccionar elementos en
(1:55:34) filas y en columnas. Además de de que Python entiende la los elementos de una de una variable, eh partiendo del cero, eh también va a entender a la hora de llamar a las matrices que primero llamamos a las filas y luego llamamos a las columnas. Entonces, lo que vamos a hacer es simplemente eh convertir nuestra matriz que hemos creado eh directamente en Python y que hemos llamado data con NPY o en una matriz NPI.
(1:56:11) ¿Cómo hacemos eso? pues simplemente vamos a nuestra función matriz de dentro del de la librería NP y convertimos nuestra eh nuestra matriz data en una matriz eh Nampai. Fíjense como ahora en lugar de aparecer el la matriz como aparecía antes, ahora nos está indicando que es una matriz eh cargada en Nampai. Podemos imprimir utilizando de nuevo el print matriz. Aquí lo que queremos indicar es que vamos a incluir a todas las filas y todas las columnas. Para ello utilizamos de nuevo los dos puntos.
(1:57:04) Igual en una manera similar que utilizamos los dos puntos antes, lo que nos está indicando es que coge todos los elementos de las de las filas y todos los elementos de las columnas. Imprimimos nuestra matriz. Ahora no hace no nos indica porque hemos utilizado [Música] eh hemos llamado a nuestra matriz eh diciéndole que queríamos justamente los elementos de la matriz.
(1:57:29) Así que simplemente nos nos la imprime de de esta manera, que es mucho más eh visual, podríamos decir, que la manera de imprimirlo cuando no lo habíamos convertido todavía en una en una matriz de Npai. Y si queremos seleccionar eh cualquier elemento, pues podemos directamente, utilizo print simplemente para verlo en pantalla, para que no se cargue en la memoria, no no eh hagamos una una nueva variable, sino simplemente la podamos visualizar con los corchetes. Eh seleccionamos que vamos a ver eh filas y columnas de dentro de la matriz data.
(1:58:05) Y en este caso, pues de la fila uno y la columna dos, pues queremos ver el qué elemento tenemos. Imprimo toda la la matriz e imprimo también el elemento F, que como podemos ver aquí está en la fila uno eh columna dos. Tan fácil como variar. De nuevo, acuérdense que siempre empezaremos a contar con el por el dígito cero. Si eh yo les pidiese el elemento cero o de la fila cero columna dos, lo que me daría sería una C. Vale.
(1:58:53) Yay, hay una pregunta en el en el Discord de qué significa el D type U1. De acuerdo. El D type 1, lo que lo que nos está eh indicando realmente es cómo se cómo se está colocando el la matriz esta en la memoria. Es básicamente es una cosa de de de Np y significa que es un que es una Ray, ¿vale? Es simplemente es simplemente eso. ¿Alguna otra pregunta? A ver. Vale, perfecto. Cualquier cosa te digo. Vale, gracias. Vale, ahora lo que vamos a hacer es lo mismo, pero eh para ver cómo NPI nos
(1:59:55) permite dentro de una matriz hacer cálculos, vamos a crear otra eh matriz. Perdón que me me he liado un poco. Aquí voy a abrir más celdas y vamos a crear una matriz de nuevo eh del mismo tamaño. Acuérdense, por cierto, que podemos ver aquí eh bueno, acuérdense, ¿no? No se los he dicho. Con la función shape podemos ver el tamaño, ¿no?, que tiene la la matriz. En este caso es 3* 3, ¿vale? Tres filas, tres columnas. Vamos a crear una nueva matriz.
(2:00:37) Eh, se las pongo en el en el chat. En este caso sería una matriz de eh numérica de integers y no de de string que vamos a utilizar para eh eh hacer algunos cálculos con con NPI, aprovechando las capacidades que tiene Nampos sencillo dentro de matrices. Entonces, igual que antes, defino mi matriz y la convierto en una matriz Np. Ahora de nuevo, perdón, data, en este caso le he llamado data barra baj de de numérica.
(2:01:21) Aquí tendríamos nuestra matriz numérica. Espero que todos la tengamos. Y si me indican que que está que ya la tienen, pues perfecto. Seguimos con los con los cálculos y podéis ponerlo por el Discord o si queréis reaccionar aquí directamente en el en el y también pueden abrir el altavoz y decirme que si lo que prefieran. Perfecto. Parece que hay algunos compañeros que ya lo tienen hecho. Eh, bueno, pues gracias a NPI lo que podemos hacer es
(2:02:24) eh hacer operaciones sencillas dentro de la de la matriz. Aquí les he copiado eh una una operación sencilla, en este caso eh que nos indique el los números, los máximos. También podríamos tener el mínimo o la media, eh, perdón, la sí, la la media o la mediana o eh el centiles. Siempre eh lo que les dije antes, dándole al tabulador, tendríamos las operaciones disponibles dentro de eh Npai. Entonces, por ejemplo, en este caso vamos a calcular el máximo
(2:03:17) eh de de nuestra matriz y le indicamos sobre qué ax sobre qué eje, sobre el eje de la fila, sobre el eje de las columnas. Si pusiésemos aquí, nos indicó que el máximo de nuestra matriz o de nuestro matriz data n va a ser una matriz e 7 89, ¿no? Que efectivamente son el máximo de o los números mayores de nuestra matriz. Si le indicásemos el que nos diese los mínimos de nuestra matriz, lo que haría es darnos justamente una matriz con los
(2:03:51) números más pequeños de nuestra matriz. Lo podemos hacer también en lugar de por filas, hacerlo por columnas. Y en este caso le estamos pidiendo que nos dé los números más pequeños de las columnas. Como vemos, el número más pequeño de perdón de de sí, de las columnas, el número más pequeño corresponde con la columna uno y nos lo eh transforma en una matriz. Si nos pusiésemos eh eje, lo que nos daría sería el número más eh pequeño de toda la eh matriz, que en este caso es el
(2:04:33) uno. Y lo podríamos hacer con el máximo, que es el nueve, o con la media, en este caso, pues sería cinco. Además nos indica, en el caso anterior nos indicaba que era una matriz el resultado. En este caso lo que nos indica es que es un float 64 es simplemente el número de bits. Es un es un tema que va con los con la cantidad de decimales, ¿vale? No nos tenemos que preocupar por ahora, simplemente nos indica que es un número eh con
(2:05:03) decimales, aunque en este caso sea eh 5.0. ¿Todo bien por aquí? Vale, pues eh pasamos entonces a la eh siguiente eh cuestión que venía en la presentación de de la compañera de Carolina y es hablar un poquito de los eh de los condicionales. Los condicionales realmente se utilizan, van a ser bastante útiles en Python, ya que nos permite discernir entre, no, preguntarle a Python si una condición se cumple, si
(2:05:50) es así, haremos una operación, si no se cumple podemos hacer otra operación. ¿Vale? Entonces, en el ejemplo que les o que pongo en este en este cuaderno es una un lo voy a buscar, es bastante sencillo, lo tengo aquí. Simplemente lo hago así para no tener que estar escribiendo. Si quieren se lo se los paso y ahora y utilizo la matriz que acabamos de crear, data n. Eh, y utilizo además la función min de y lo que hago es que le pido que me
(2:06:33) calcule el eh mínimo de eh de mi variable de mi matriz, ¿vale? que es uno. Y ahora le pregunto, define una variable que en este caso sería la llamada eh la vamos a llamar num y le pregunto a Python si eh mi variable num es mayor o igual que un determinado valor, en este caso cinco. ¿Cómo hacemos este tipo de de loops de statement? pues utilizando el la función if y else if lo que nos va a hacer es abrir este statement de de
(2:07:30) condicional y lo que nos va a hacer es si una condición no se cumpliese entonces ese es el else entonces a este otro como lo utilizamos If en el caso nuestro, si nuestra variable es mayor o igual, pero podría ser igual, pondríamos entonces dos eh símbolos de igual o podría ser eh menor o igual o simplemente menor. ¿De acuerdo? Podríamos ir jugando con esa con esas eh opciones.
(2:08:04) Es menor que un determinado valor, perdón, es mayor o igual en este caso que un determinado valor. Entonces, dos puntos. En este caso lo que lo que haría la los dos puntos sería indicarnos que ya tenemos la condición y ahora queremos saber qué es lo que lo que Python nos va a hacer en caso de que esa condición se cumpla. Pues si esta condición se cumple, imprímenos pues que este esta variable es mayor que 5.
(2:08:38) Si no fuese de nuevo los dos puntos para que Python entienda que lo que queremos es que haga esto otro, esta función no es mayor que 5. ¿De acuerdo? Y aquí les hago un pequeño inciso para explicarles. Les dije al principio que la que la función print es capaz de combinar eh los diferentes tipos de valores que que Python admite. En este caso admite string, que es lo que hemos puesto en entrecomillado. Y en el caso que yo quiero, la variable es N, que tendría esta forma. sería un uno.
(2:09:27) Simplemente diciendo lo que es un string, puedo combinarlo y crear una frase con el uno es mayor que 5, uno no es mayor que 5. ¿De acuerdo? Le doy a ejecutar y efectivamente num que era 1 no es mayor o igual que c lo cual en lugar de imprimirme esta primera parte, esta primera condición, lo que hace es decir, vale, no se cumple la condición, voy a ver qué me ha puesto como alternativa. La alternativa es el es uno no es mayor que cinco. Y además le he puesto un último print que nos indica que nuestro nuestro ciclo nuestro ciclo de
(2:10:19) condicional está eh está realizado. Si nosotros en lugar de calcular el mínimo de data n, ¿no?, de la de la matriz data n calculásemos el máximo. Eh, aquí nuestro máximo es nueve, con lo cual lo lógico es que ahora la primera condición se cumpliese y lo que nos nos apareciera impreso en pantalla es que 9 es efectivamente mayor que cinco. es un ejemplo bastante eh sencillo, pero como les digo, tiene una utilidad bastante grande, ya que nos va a permitir eh jugar con con diferentes
(2:11:08) condiciones. lo podemos complicar, eh, sí, se los complic. Lo que nos va a indicar es que si esta condición se cumple, la if me va a imprimir esto, si se cumple la siguiente, nos va a imprimir lo otro. Simplemente no sé. Como ven, eh se sigue cumpliendo la primera eh la primera condición, con lo cual lo que me hace es imprimir eh o sí imprimir en pantalla que 9 es mayor que 5. Si le diésemos al Ay, perdón, aquí lo que me pondría es que es CCO mayor que CCO porque estamos hablando de un de
(2:12:18) un eh de un float. Vale, perfecto. Veo que lo copió Laura. Vale, todo bien hasta ahora. Vale, pues si va todo bien. Disculpa, ¿podría repetir este el elif? ¿Para qué lo utilizaste? Me quedó una duda ahí. Sí, el elif lo que nos va a a hacer es si la condición eh if no se cumple, eh podríamos añadir otra segunda condición con el if. Hm. ¿Entendiste? Sí. Sí. Gracias. Sí, es como else, perdón, if sería la primera condición, el if es para poner una segunda condición y else es si no se
(2:13:24) cumplen estas condiciones, entonces vamos al al else, ¿vale? Esa sería la idea del if, el if y else. Vale, pues eh si esto se entendió, vamos a a graficar, hacer una pequeña gráfica de nuestra de nuestra función. Eh, antes a lo primero que hicimos realmente fue crear una una matriz eh random, que era la que le llamé a y vamos entonces a aprovecharla y a eh plotearla, ¿vale? Plotearla, graficarla. Para ello hemos estado utilizando hasta ahora la librería NPI o Nampi y ahora lo
(2:14:21) que vamos a hacer es utilizar la MAPL lipos visto al principio, perdón, PLT, si se acuerdan, vamos al principio, la habíamos importado con el nombre de PLT, así que podemos hacer exactamente lo mismo. Ya, una vez está cargada en nuestro en nuestro Júpiter, con el punto podríamos ver qué funciones admite o qué funciones incluye la librería Mapot PLOT, en este caso, ¿no? PLT.
(2:14:54) Una de las que incluye es sub plots, que lo que nos permite es eh ejecutar o o graficar, ponernos un canvas, ponernos una un cuadro en el cual nosotros poner nuestro nuestro gráfico. Para ello, lo que vamos a hacer es utilizarlo tal cual lo hizo así, que es la mejor manera, la manera más correcta de utilizar este este código. Fix sería la figura, ¿de acuerdo? Podemos eh crear dos variables al mismo tiempo.
(2:15:37) En este caso va a ser figura y a X, que serán los ejes. ¿Vale? Como no hemos indicado ningún ningún tipo de de cuántos plots queremos ni nada, simplemente le hemos dicho que nos dibuje una figura con un eje, ¿no? Lo que nos va a hacer es eh eh imprimirnos en pantalla, pues justamente esa figura que le pedimos. Eh, por defecto nos saldrá un eje I y un eje X cuyas eh cuyos límites estarán entre 0 y 1. Obviamente todo esto se puede modificar después, pero en la manera más sencilla, pues esta es nuestra eh nuestro canvas, ¿no? Nuestro cuadro en
(2:16:23) el cual vamos a incluir nosotros eh la figura. Vamos a Sí, vamos a llamar primero a la figura. Vamos a crearle. Así lo vemos. Lo que haremos es utilizar esta figura o esta este eje que hemos creado y utilizar dentro de la librería eh PLT la función plot. es la función más sencilla y se utiliza para eh pues justamente hacer eh figuras eh con una con una matriz, ¿no? Figuras X Y. Vamos a utilizar el la matriz A, la matriz que habíamos
(2:17:13) definido antes. Y para hacerlo más sencillo, vamos a limitarnos a la eh fila número cero, la primera fila y a todas las columnas. Aquí podemos definir el color y podemos definir con line wid el tamaño la el grosor, perdón, de nuestra de nuestra línea. De nuevo, si nosotros le diésemos aquí a eh mayúscula tabulador, nos va a indicar para qué eh se utiliza la función plot de PLT. Aquí lo vemos, plotear eh una función I versus X y nos va también a eh contar un
(2:17:55) poco de cómo utilizarlo, de qué, perdón, qué opciones tenemos. Por ejemplo, si queremos eh hacerlo con puntos, si queremos que la línea sea entrecortada, por ejemplo, lo podemos ver ahora, o si la queremos eh que sea continua, etcétera. Entonces, ejecutamos y vemos justamente pues esta línea de definida por los valores de dentro de nuestra matriz, como vemos una una línea con no negativa y aunque el eje X no ha
(2:18:30) cambiado, el eje X sigue siendo de 0 a 1, sí que vemos que los valores del eje Y pues han cambiado y se adaptan a los valores que teníamos dentro de la matriz. El color es tomato, pero podemos ponerle otro rojo o podemos ponerle eh azul, ¿vale? Normalmente los colores vienen simplemente en inglés. Eh, si no me equivoco, también hay ciertos códigos como K, que sería negro o eh no quiero ahora estar equivocándome, pero si no me equivoco, la B es blue, ¿vale? Hay ciertos códigos que ya vienen predefinidos, pero eh
(2:19:10) también se pueden poner el color en inglés y y funciona. De hecho, podemos jugar con diferentes tipos de colores. Por ejemplo, en vez del azul, podemos utilizar un un azul oscuro, podemos utilizar un azul eh light, un azul más suave y lo mismo con otros con otros colores, ¿no? Light green o dark green, etcétera. Vale, como vemos, tenemos a nuestra disposición toda una paleta de colores y toda una paleta de opciones.
(2:19:45) Por ejemplo, aquí lo mismo. Podemos alterar el grosor de nuestra línea. Podemos, como les dije antes, en lugar de de continuo, podemos hacer la línea discontinua, etcétera. Vale, tenemos a nuestra disposición gracias a Python una cantidad de opciones, mes, como les decía al principio, casi ilimitada. Y luego podemos añadirle eh labels, ¿vale? Podemos y un título también, simplemente eh figura de prueba con exlabel y y label podemos eh
(2:20:36) añadir las etiquetas, ¿no?, de cada de cada uno de los de los ejes y con title pues ponemos eh una un título a nuestra figura. De nuevo, eh utilizamos nuestro tabulador mayúscula y vemos las diferentes opciones que nos permite el el en la función titan en este caso. Y de nuevo pues podemos poner pues color, eh podemos poner el tamaño, podemos poner podemos hacer diferentes cosas. No me voy a entretener con esto para que ustedes también se entretengan.
(2:21:17) si quieren y puedan probar las diferentes eh formas que hay para eh editar o eh eh sí, editar, cambiar nuestro nuestra figura con Play Show. Lo que diríamos a a Júpiter es que nos muestre en pantalla cómo queda la la figura, ¿no? Que la muestre. Vale, veo que hubo un pequeño sí, un pequeño problema en en Discord, pero ya todo solucionado. Vale, hasta aquí todo bien, ¿verdad? Es bastante sencillo y eh no sé si Laura quieres comentar algo
(2:22:13) o si Sí, bueno, sí, como comentabas tú, se pueden hacer muchas cosas y creo que también una ventaja de Python es que una cantidad, ¿vale? Hay una cantidad extensa de documentación, con lo cual eh pueden mirarla, pueden mirar todas la la las funciones, todos los ejemplos que que dentro de las funciones ponen. Eh, si no es en la propia página de Maplot Lip, que ya tiene una documentación extensa, siempre se puede preguntar en
(2:23:20) foros, por ejemplo. M, no sé, ahora mismo no se me ocurre ninguna pregunta, pero eh lo tenéis en sí, no se me ocurre ahora mismo ninguna pregunta así interesante que pudiésemos preguntar, pero vamos, en Google hay una documentación tremenda sobre eh cualquier función de de Python y siempre encuentran las respuestas y no solamente una, sino sino varias. No sé si seguimos un poquito más con el tema de la de graficar o lo dejamos aquí.
(2:24:12) Yo a ver, no sé qué tal van de energía. Sí, por eso si hay dudas, no sé. Eh, sí, claro, llevamos ya al final, sí, 2 horas y media. No sé si hay alguna duda más o curiosidad o eso sí quieren ver algún otro ejemplo de alguna gráfica o si e prefieren guardar el tiempo para algunas otras dudas más técnicas que haya habido de de Git o Júpiter o bueno, sí, aprovechar el tiempo también que estamos aquí para un poco
(2:24:51) guiar lo que más interese o lo que más haya problemas. A ver, están escribiendo. Están escribiendo. A ver qué hay. Pero también creo que lo comentó Marian que todo el material que hemos estado compartiendo antes, esto mismo que ha mostrado Jeraica, hay ejemplos también aquí en la en la web de del aula invertida. A ver si encuentro aquí el enlace genérico otra vez. Ah, y ahí hay muchísimos ejemplos en inter aquí en esta página web hay el material de estudio.
(2:25:45) Mm. Sí, sí. El código va a estar, de hecho, está disponible en la plataforma. Si no, ahí lo pone Laura. Si no estuviese cualquier cosa que que yo haya puesto aquí, pero creo que ya tiene que estar puesta de de la edición anterior, eh, se los puedo volver a pasar, por supuesto, no hay ningún problema. Y si estará también la grabación online, o sea, bueno, de la gración de ex de la sesión de ayer ya ya vieron, fue muy rápido y y hoy ya estaba disponible, así
(2:26:25) que imagino que igual mañana también o pasado estará y pueden ver otra vez el vídeo. Yo recomendaría eso, aunque a veces acabamos copiando trozos de código y creo que vamos haciéndose un poco el el pudle, está bien el practicar, el poner el vídeo y siguiendo lo que hacía Jeray cuando se tenga mejor red. A ver, hay otro comentario de Andrea. Se pueden graficar plots para hacer Zoom en alguna ocasión.
(2:26:51) Vi una serie de tiempo y para ver un detalle en privad en particular para hacer zoom. Andrea, ¿a qué a qué se refiere? Un periodo en particular. Sí, sí, sí, sí. Bueno, es que en una ocasión, no recuerdo en qué tipo de programa lo hicieron, pero era una serie de tiempo, no sé, como de 50 años. Entonces a veces como que es interesante, tal vez no los 50 años, sino un periodo en específico y le hacían justo como ese zoom, o sea, agrandar como nada más un pedazo de de la gráfica, se puede decir.
(2:27:25) Sí, sí, sí, sí, sí. Hay funciones. Eh, claro, nos podríamos meter un poquito en esto, pero lo hago muy rápido. Este sería otro otro notebook que que se los podría pasar. Este este es nuevo, bueno, nuevo lo lo retoqué un poquito para enseñárselos para este año. Y dentro del del material disponible estaba un fichero que se llama ERA 5 y que pues podemos abrir y tiene diferentes eh registros temporales.
(2:28:08) Entonces, este, por ejemplo, nos podría servir para la para la cuestión que que haces, ¿no? Lo que vamos a hacer es lo paso rápido para así no perder mucho tiemp no hacerles perder a ustedes mucho tiempo y se los explico rápidamente. Aquí estamos importando las librerías que habíamos importado antes, NPAI, pero ahora también importo otras librerías, unas Pandas, que es interesante para la cuestión que estabas ahora diciendo, y otra sería pues Net CDF.
(2:28:36) Los Net CDF eh son unos archivos que normalmente se utilizan para son metaarchivos, ¿no? Para cuando uno tiene muchísima información en diferentes dimensiones, ¿vale? Eso sería más o menos así por encima la la la utilidad de estos ficheros eh Net CDF. Entonces, lo que voy a hacer es abrir un fichero. Este fichero, el el era 5 que les decía. con la función dataset de mi librería Net CDF y voy a llamar a mi, bueno, esta librería lo que tiene es eh datos de temperatura superficial y voy a llamar la SST, ¿no? De C surface temperature.
(2:29:25) Es una cosa que no les dije antes, pero que cuando eh definamos variables, intentemos poner nombres que ya eh sean nos indique qué contenido tiene la variable, ¿vale? Yo podría poner de nuevo, podría poner yerai aquí o poner eh piedra, pero eso no me va o a cer o a1, pero eso no me va a indicar qué es lo que qué es lo que tiene la variable, ¿no? La variable si es de temperatura, pues podremos poner si surface temperature o dos, ¿no? Temperatura oceánica superficial, cualquier CR y si
(2:30:01) es longitud, eh, long, si es latitud, lat, si es tiempo time, ¿no? Por ejemplo, serían buenos ejemplos. Vemos que SST es una es una matriz eh enorme y que el AT pues es otra matriz que contiene todas las latitudes de de mi fichero. ¿Vale? Esta sería la la eh el contenido de este de este fichero. Lo que nos permite estas funciones, las de estas librerías como Panda o como Xarray o como Net CDF es manejar estos estas
(2:30:53) matrices de una manera un poco más intuitiva. Entonces eh perdón porque les estoy ya descubriendo un poco la la pólvora. Si nosotros vamos al al tiempo, nos va a poner que las unidades están de esta de esta manera, ¿no? En horas desde el año 1900. Y eh si nosotros queremos directamente ir a una a una fecha en en concreto, lo que podemos hacer es crear esa fecha de referencia. En este caso es el año 1900.
(2:31:32) y luego eh transformarla en días, por ejemplo, ¿qué es lo que perdón, qué es lo que hice? Eh, justamente aquí creé una variable, le llamo bar porque en este caso va a ser una variable simplemente eh de utilidad para lo que lo que viene después y luego creo una variable de tiempo en el que le quito esta referencia. Gracias a esta referencia, lo que tengo es que el primer eh dato va a estar en este año, en el año 1959, el último en el año 2000 eh 2019, como
(2:32:11) vemos aquí, tiempo cero -1. Si yo esté eh si yo quisiera, perdón porque lo estoy haciendo un poco rápido, pero es simplemente para mostrarles la la capacidad que tiene eh Python para este tipo de problemas. Si yo quisiera que me mostrase el los el tiempo inicial hasta el registro número 10, pues lo que haría es mostrarme efectivamente todos los registros en este en este caso, en esta en este fichero van por año, eh, van cada 3 años, perdón.
(2:32:48) Aquí tendríamos el registro del año 59, el año 62, 65, etcétera. Entonces, podríamos de esta manera seleccionar el tiempo que nosotros quisiésemos. Si nosotros en lugar de querer los cinco primeros, los 10 primeros registros, que hiciésemos los cinco primeros registros, ya podríamos los cinco primeros registros. Lo he hecho un poco rápido, pero espero que se haya entendido que la manera de de Hay diferentes maneras, esta una de
(2:33:19) ellas es eh definir en nuestra matriz el tiempo. Supongo que en el ejemplo que ustedes vieron sería una serie temporal, tendría asociada obviamente una variable tiempo gracias a esa variable tiempo y con las funcionalidades de Python, en este caso pues de Net CDF, pero también podríamos hacerlo con Panda o con Xarray, que es algo que seguramente veremos en la en la parte de Python intermedia, ¿no? en los cursos intermedios, si están ahí, pues
(2:33:51) eh se pueden seleccionar fechas concretas o series temporales dentro de una serie series temporales más pequeñas dentro de una serie temporal grande y graficarla. Bueno, y perdón por lo por lo rápido. Eh, ¿tenemos alguna duda de estos? Imagino que sí, perdón, porque lo hecho muy rápido. O de cualquier otra cosa que hayamos hablado durante la sesión y que quieran comentar. Disculpen, me distra Ah, sí, me distraje un momento en los últimos 2 minutos algo así, pero solo quería mencionar que
(2:34:34) e tal vez la pregunta original, no me acuerdo ahorita el nombre, a ver, eh, ¿quién es la que la hizo? Eh, Andrea, ¿qué hizo? No sé si se refería a a poder interactuar con el la gráfica de manera interactiva, en otras palabras, poder apretar un botoncito y y hacer el zoom. Eh, si si ese era el caso, eh, bueno, primero que Mat, que seguro que ya lo dijiste, esto erá generalmente o en casi todos los casos se usa para eh gráficas estáticas, en otras palabras, gráficas con las que uno
(2:35:17) no va a interactuar, no va a tener botoncito. tiene capacidades rudimentarias para hacerlo tanto dentro de Júpiter y cuando se hace una sesión fuera de Júpiter. Y hay otras librerías de parecer gráfica que específicamente están diseñadas para tener esa capacidad desde el principio y podemos mencionarlo. Tal vez hoy es dema, esta es la introducción a Python y más bien confundiría hablar de esas otras eh librerías, pero tal vez en las
(2:35:49) sesiones futuras, en el taller intermedio, por ejemplo, sí podemos hablar de eso. E pero también hay una como Mat tiene estos elementos rudimentarios. Júpiter eh se puede configurar un cuaderno para eh de tal modo que la gráfica de Mat Lib eh muestren por defecto estos iconos eh de Zoom, etcétera. Estaba investigando si es algo que está instalado por defecto ya en el en el entorno de Conda de Júpiter Labré antes
(2:36:24) y no he llegado a la respuesta todavía. Si ego se las comparto por e por eh, ¿cómo es que se llama? Ay, perdón, por sí. Como si, como comentaba Emilio, está bien saber si hay interese, por ejemplo, en estos plus interactivos, porque ya como en las próximos cursos más intermedios o avanzados, pues se podrían ya poner ejemplos de esto. Y es verdad que en cuanto a plot interactivo ahora hay paquetes que dejan hacer muchas muchas virguerías y zoomear, girar,
(2:37:02) hacer muchas cosas con las gráficas. Ya no hay unos paquetes que permiten hacer eso, pero con dificultad, o sea, uno tiene que poner bastante código para lograrlo y hay otros paquetes que permiten hacer interacciones básicas, pero fácilmente. Hm. Eh, no sé si tienen alguna duda, alguna cosa que quieran comentar. Había un comentario de Gabriela sobre importar una matriz de datos preexistente y luego realizar
(2:37:40) gráficos. Y bueno, le comentamos aquí que dependía un poco, ¿no?, del tipo de de datos que quisiera graficar. Eh, no sé si quiere dar más detalles o o era solo así una duda general, si no eso si hay más preguntas también. Hola, buen día. Voy por acá. No, era más que nada orientado a Se escucha. Eh, era más que nada a a datos básicos como puede ser Excel, cómo separated value, eh me interesaba eso, cómo importar una matriz de datos, así como
(2:38:19) mostró que él creaba la matriz aleatoria. por ahí eh un ejemplo de que por ahí uno tiene una matriz de datos ya preexistente, cómo importarla en Júpiter LAP. Hm. Eh, hay una, bueno, yo al menos eh utilizo una una librería que se llama Pandas, que está específicamente pues específicamente hecha, ¿no? Program para matrices, para CSVs, para Excel, para este tipo de de archivos. Entonces, en el caso de Pandas es tiene la función read barra baja
(2:39:06) CSV. Y si lo tienes configurado en un CSV, ¿no? En un tab de limiter de esto, bueno, coma, en este caso CSV, ¿no? Coma de limiter, pues lo puedes leer fácilmente. Y de nuevo hay muchísima documentación sobre sobre pandas, es algo que está muy bien documentado y y sinceramente es muy muy útil. y se integra muy bien con con otra con otras librerías, ¿no? Con librerías de gráficos y así, o sea, que es bastante útil. Bastante útil.
(2:39:43) Buenísimo. Gracias. Nada, están escribiendo en el Discord, pero eso si alguien también se quiere animar a hablar por el Zoom directamente, ¿no? No hay problema. Lo que sea más cómodo. Si nadie tiene preguntas y y tienen la curiosidad, puedo compartir pantalla y mostrar algo de eh eh esta interacción en lo que hablábamos antes con gráficas de Macrb. Sí, yo creo que así si surge alguna otra duda mientras lo muestren lo pueden escribir en el en el Discord a ver si Bueno,
(2:40:48) e asumo que ven bien mi pantalla. Sí. Eh, y aquí van. No se preocupen si esto da más dolor de cabeza, pero básicamente eh Júpiter eh permite flexibilidades. Eh en el caso de Macr hay un modo, digamos, por defecto eh de cómo utiliza Mac Leo, cómo muestra plot. Este modo se llama eh inline, o sea, en línea. Eh, ustedes no tienen que que poner este comando, automáticamente lo va a hacer comenzar un cuaderno y este comando que tampoco
(2:41:24) tiene que ponerlo es lo que se le llama un comando mágico que que tiene Júpiter. Eh, podemos cambiar esto a otro tipo. Hay varios tipos de de modo de mat si lo cambiamos a QT. Eh, no es el ideal, no sé, creo que no lo recomendaría, eh, pero por lo menos quería mostrarlo porque esto lo van a a tener disponible en el entorno que eh en las instrucciones del entorno de Júpiter Labramos el lunes y que están en el tutorial.
(2:41:49) Bueno, entonces voy a recomenzar esto. Si lo cambiamos a QT, eh, disculpen, voy a regresarme al al a lo que encontrarían por defecto, o sea, si no hacen nada. Esto es lo que verían. Está el plot estático. No podemos interactuar con el plot. Ahora lo vamos a cambiar. Ah, no van a ver esto. Sí, no. Eh, lo que va a hacer esto, eh, pero no lo van a ver porque estoy compartiendo nada más mi browser. E pero esto lanza una, y aquí algo no funcionó bien, no sé por qué, pero lanza
(2:42:45) una nueva ventana que con el plot que es interactiva. Bueno, no van a ver, asumo que no ven esta pantalla. La figura no no sale. Tendría que quitar. Bueno, lo voy a hacer. Voy a dejar de compartir y volver a compartir el Ahora sí la ven. Sí. Sí. Bueno, entonces esto lanzó una ventana externa y aquí pueden ver que tiene lo que operarían. La razón por la que no recomiendo esto es porque esta este plot esta gráfica no sería guardada
(2:43:29) en el cuaderno en sí. Entonces, eso lo hace eh va contra, digamos, los principios o las metas de un cuaderno. Eh, pero por lo menos sí lo permite y no tienen que hacer nada extra, instalar nada extra, solo añadir esta línea. Lo que yo recomendaría y podemos reexaminar esto en el futuro, hay un una librería extra que se puede instalar e para permitir que tener iconos para interacción en un e en una gráfica de
(2:44:03) MAT no está instalada. Sí, en lo que le recomendamos, pero solo para mostrarlo. Aquí lo voy a enseñar. El modo sería widget. Y igual el comando siempre es el mismo, pero lo que añadiría son iconos para hacer lo mismo que estoy haciendo en una figura externa, pero hacerlo dentro del cuaderno. Entonces, aquí pueden ver que esto altera Ma, los gráficas de MATR para tener eh gráficas o plots que son un poco
(2:44:36) interactivos y y solo es cuestión de cambiar de de añadir una una librería al entorno. Gracias. Sí, justo era eso, más que nada porque, bueno, a mí me tocó hacer tiempo para mi tesism y bueno, yo trabajo más con R, no trabajo con Python y lo que a veces me pedía mi asesor era de esta área parece que es interesante, hace más grande. Claro. Y cuando tenía que volver a eh a hacer como todo el script, cambiar como mis periodos de tiempo y a
(2:45:17) veces era de no es interesante y ya era como de todo el trabajo que había hecho y en algún lugar llegué a ver esto y dije, bueno, es que esto es como por practicidad sería como, o sea, sí entiendo de que tal vez no lo puedo presentar tal vez como en un documento, pero al menos como para visualizar y ya. Ya, de manera más sencilla de, ah, bueno, ya sé que este es el periodo que tengo que seleccionar, ya hago mi gráfico estático.
(2:45:47) Claro. definitivamente el proceso de explorar muchas veces cuando uno está usando un cuaderno eh no es para hacer algo que ya sabemos 100% exactamente lo que vamos a hacer y no vamos a desviarnos de ese paso, sino que es un proceso exploratorio en y precisamente lo que dijiste de que ves este pedacito ahí hay algo interesante en los datos, poder acercarse y explorarlo fácilmente es superútil. Y también hay paquetes que permiten porque igual, bueno, a mí me llevó a pasar de tiempo, ¿no?, que igual tu
(2:46:19) supervisor o asesor no usa Jupiter Notebook y y todo esto, pero permite también una desventaja del de este formato es que lo puedes, por ejemplo, exportar como HTML. Entonces, tú luego tienes eso ahí exportado y puedes interactuar y ya no pueden ponerte las cursa de no uso R, no uso Python o no tengo Júpiter instalado. HTML sin problema se puede usar. Así que bueno, como decía ayer, hay con Python hay muchísimas posibilidades y cada vez hay cosas nuevas también.
(2:46:58) Okay. Eh, no sé si hay una última duda, si no ya sí vamos a hacer tres horitas aquí. E yo recomendaría eso. También vamos a estar pendiente estas dos próximas semanas del Discord de aprovechar de preguntarnos cosas por el por el canal. También algunos compañeros ya habéis visto también a veces pueden ser de ayuda y está bien para aprovechar y aprender, ver si qué cosas querréis hacer después o qué parte os podría interesar.
(2:47:54) No hay nada más, creo. Ev.