Hola!! Si quiero unir varias bases pero utilizando como identificador una variable en específico que comando debo utilizar el comando merge, uniendo dos bases, luego guardar e así ir uniendo una a una las demás??? no se puede como append unir varias veces de una?? Quedo atenta.
Hola Camila, ese problema se soluciona muy fácilmente ya sea eliminando/renombrado la variable _merge o puedes directamente usar las opciones del comando merge: gen() o nogen() para que esa variable tenga un nombre específico o para que directamente ni se cree, respectivamente. Espero te sirva, saludos. ( no se puede usar como el append el merge par unir varias vaces simultáneamente pero no es necesario q guardes las bases intermedias)
Hola Adrián, en el caso que el tipo de unión sea un append puedes hacerlo simultáneamente: append using base1 base2 base3. En caso de que tengas que mergear si o si lo tienes que hacer en líneas separadas indicando siempre las variables clave. Espero te sirva, saludos.
Hola!! Existe alguna forma de traer solo una variable de la base de datos using? Me pasa que estoy trabajando con base de datos de 40 variables aproximadamente, pero en realidad solo necesito una variable en específico, por lo que una vez hecho el cruce de datos me dedico a eliminar las otras 39 variables. Saludos y gracias por los videos!!
Hola Bruno, efectivamente la hay. Tienes que usar la opción keepusing() y listar dentro del paréntesis las variables que quieras traer de la base using (Recuerda que las opciones van después de poner la "," ). Espero que te sirva. Un saludo.
Hola Daniela. Estos meses tuve algunos inconvenientes pero en el 2021 reactivo el canal y voy a tener en cuenta tu sugerencia ! Muchas gracias. Saludos
Una pregunta, si tengo dos bases que en general tienen las mismas variables, excepto por una o dos varibles "nuevas" en la base using. Debo usar append o merge? porque necesito que la unión sea vertical, pero si tiene esas nuevas variables como hago para que estas aparezcan en la base conjunto. Saludos!
Hola Laura, para hacer appen no necesitás una variable llave ni que sean las mismas en ambas bases. Simplemente usá el append y vas a ver que las variables que están en una sola base van a estar con missing en todas las observaciones (filas) que corresponde a la base donde esa variable no existe. Espero que te sirva y gracias por ver los videos. Saludos
Tengo una base de datos de Panel donde tengo una columna 'Wbcode' la cual tiene varias observaciones para el mismo país en años distintos. ---Ilustración { 'year' : 2000 , 2001 , 2002 / 'wbcode' : ESP, ESP, ESP/ 'PIB' : 10,20,30} ---- y la quiero unir mediante merge con otra base de datos que tiene la misma forma . como lo hago para que el año y el wbcode de la base master se unan con su homologo de la base using??
Hola, simplemente usas las dos variables luego de indicar que tipo de unión es (1:1 supongo en tu caso). Te quedaría: merge 1:1 wbcode año using “ruta y nombre de la base” (las variables wbcode y año tienen q llamarse igual y ser del mismo formato en ambas bases) Espero te sirva, saludos !
Hola, estoy intentando realizar una mezcla de dos bases mediante Merge 1:1 con la variable Llave, sin embargo, me manda el siguiente mensaje: La variable Llave no identifica de forma única las observaciones en los datos maestros, cómo puedo solucionar el problema? De antemano gracias.
Hola Viridiana, el error te está remarcando que existen valores repetidos de la variable llave que estás utilizando en la base que tienes abierta al momento de hacer el merge. Por lo tanto, STATA no sabe a qué fila tiene que asociar el dato de la base using. Te recomiendo que revises si esta repetición de datos de la variable llave es un problema de datos (algo que suele ocurrir es que la variable llave tiene valores missing y esos son los que se repiten) . En caso de que no sea un problema de la variable llave y lo que quieras es asociar el dato de la base using con todas las filas que se repiten ,simplemente usa merge m:1 (en lugar de 1:1) y de esa forma no tendrás el error. Espero haber sido claro y que te sirva mi respuesta. Saludos
Hola me gusto mucho tu video, pero tengo una consulta, yo quisiera asociar dos bases con el comando merge m:1, debido a q quiero pasar una base q es a nivel de hogar a una base q es a nivel individual, pero me sale un mensaje q las variables llaves no identifican de forma unica las observaciones en los datos de uso, q podría hacer, muchas gracias.
Hola Nicole, imagino que quieres llevar de tu base de hogar (using) a tu base de individuos (master). Por lo cual en la base de individuos puede repetirse el id de hogar, es por eso que usas la "m" del m:1 . Sin embargo en la base de hogar solo debe existir una vez cada registro de hogar (por eso el 1 después de los ":"), revisa la variable de id porque debe existir algún registro duplicado (incluso si hay 2 missing por ejemplo ya cuenta como repetido). Espero que te sirva. Saludos !
Hola Sofía, para incorporarlo a la base de datos directamente incorporo la base "deuda.dta" uniéndola a la base ya cargada ("propiedades.dta") (minuto 17 del video). Si tu consulta es sobre cómo hice para pasar del archivo de excel a la base en formato dta te recomiendo pasar a ver este video: th-cam.com/video/Y9wcXqYdH84/w-d-xo.html. Gracias ! Saludos
Hola, una consulta. Cuando uso merge me aparece este error: variable cod_provincia does not uniquely identify observations in the using data r(459); A que se debe? (solo me funciona el merge m:m pero entiendo que no es recomendable usarlo)
Hola Elias, eso sucede porque en la base que querés unir (base using) con la actualmente abierta contiene valores repetidos de la variable cod_provincia por lo cual STATA no sabe cual de todas las observaciones asociar. Tené en cuenta que si hay más de una observación con missing (vacío) en esa variable también cuenta como repetido. De ser este el caso, directamente deberías eliminar todas las observaciones que tengan missing en esa variable. Espero te sirva, saludos.
Muy bueno el video, explica super bien. Lo que si me arroja un problema al momento de unir las bases, me aparece esto: variable id_identificacion does not uniquely identify observations in the using data yo me aseguré de que las variables sean iguales, quiero unirlas por merge m:1 . Cuál podría ser mi error?
Y que pasa si tengo más de 100 variables en 3 bases de datos y las quiero unir con merge, voy a tener que estar viendo 300 variables para ver si concuerdan o no? :/
No te olvides de SUSCRIBIRTE y activar la campanita 🛎, así me ayudas a seguir haciendo más videos !!
th-cam.com/channels/-jqicSCWen_FCATDcFVORQ.html
Gracias por el video! Me sirvió mucho, saludos desde México
Buen video crack,super didáctico me sirvió para mi parcial de estadística aplicada.
Muchas gracias por tu video, me sirvió muchisimo para un trabajo de computación. Saludos desde Chile :D
Me alegro mucho Antony ! Saludos
Muy bien explicado, felicitaciones.
Hola!! Si quiero unir varias bases pero utilizando como identificador una variable en específico que comando debo utilizar el comando merge, uniendo dos bases, luego guardar e así ir uniendo una a una las demás??? no se puede como append unir varias veces de una??
Quedo atenta.
Ya descubrí que no sirve porque me aparece que ya está creada la variable _merge :(
Hola Camila, ese problema se soluciona muy fácilmente ya sea eliminando/renombrado la variable _merge o puedes directamente usar las opciones del comando merge: gen() o nogen() para que esa variable tenga un nombre específico o para que directamente ni se cree, respectivamente. Espero te sirva, saludos. ( no se puede usar como el append el merge par unir varias vaces simultáneamente pero no es necesario q guardes las bases intermedias)
que tal si tengo 3 bases como las junto?
Hola Adrián, en el caso que el tipo de unión sea un append puedes hacerlo simultáneamente: append using base1 base2 base3. En caso de que tengas que mergear si o si lo tienes que hacer en líneas separadas indicando siempre las variables clave. Espero te sirva, saludos.
Hola!! Existe alguna forma de traer solo una variable de la base de datos using? Me pasa que estoy trabajando con base de datos de 40 variables aproximadamente, pero en realidad solo necesito una variable en específico, por lo que una vez hecho el cruce de datos me dedico a eliminar las otras 39 variables. Saludos y gracias por los videos!!
Hola Bruno, efectivamente la hay. Tienes que usar la opción keepusing() y listar dentro del paréntesis las variables que quieras traer de la base using (Recuerda que las opciones van después de poner la "," ). Espero que te sirva. Un saludo.
@@stateando podrías hacer un vídeo por fa 🥺
Hola ¿Podrías hacer un video de matrices? Amo tus videos! Saludos.
Hola Daniela. Estos meses tuve algunos inconvenientes pero en el 2021 reactivo el canal y voy a tener en cuenta tu sugerencia ! Muchas gracias. Saludos
@@stateando Es 2022 :( y sigo esperando más videos jajaja, pd. Me has ayudado muchísimo
Una pregunta, si tengo dos bases que en general tienen las mismas variables, excepto por una o dos varibles "nuevas" en la base using. Debo usar append o merge? porque necesito que la unión sea vertical, pero si tiene esas nuevas variables como hago para que estas aparezcan en la base conjunto. Saludos!
Además, no tengo una variable "llave" en las bases
Hola Laura, para hacer appen no necesitás una variable llave ni que sean las mismas en ambas bases. Simplemente usá el append y vas a ver que las variables que están en una sola base van a estar con missing en todas las observaciones (filas) que corresponde a la base donde esa variable no existe. Espero que te sirva y gracias por ver los videos. Saludos
@@stateando Mil gracias:)
Tengo una base de datos de Panel donde tengo una columna 'Wbcode' la cual tiene varias observaciones para el mismo país en años distintos. ---Ilustración { 'year' : 2000 , 2001 , 2002 / 'wbcode' : ESP, ESP, ESP/ 'PIB' : 10,20,30} ---- y la quiero unir mediante merge con otra base de datos que tiene la misma forma . como lo hago para que el año y el wbcode de la base master se unan con su homologo de la base using??
mi criterio de union no es una variable llave sino que 2, ayudaa porfavoor
Hola, simplemente usas las dos variables luego de indicar que tipo de unión es (1:1 supongo en tu caso). Te quedaría:
merge 1:1 wbcode año using “ruta y nombre de la base” (las variables wbcode y año tienen q llamarse igual y ser del mismo formato en ambas bases)
Espero te sirva, saludos !
Hola. para hacer el append de varias bases, ¿debe usarse algún separador?. Muchas gracias!
Hola ! No, no es necesario, solo un espacio. Lo que sí, todas las bases deben estar en formato dta. Saludos
Hola, estoy intentando realizar una mezcla de dos bases mediante Merge 1:1 con la variable Llave, sin embargo, me manda el siguiente mensaje: La variable Llave no identifica de forma única las observaciones en los datos maestros, cómo puedo solucionar el problema? De antemano gracias.
Hola Viridiana, el error te está remarcando que existen valores repetidos de la variable llave que estás utilizando en la base que tienes abierta al momento de hacer el merge. Por lo tanto, STATA no sabe a qué fila tiene que asociar el dato de la base using. Te recomiendo que revises si esta repetición de datos de la variable llave es un problema de datos (algo que suele ocurrir es que la variable llave tiene valores missing y esos son los que se repiten) . En caso de que no sea un problema de la variable llave y lo que quieras es asociar el dato de la base using con todas las filas que se repiten ,simplemente usa merge m:1 (en lugar de 1:1) y de esa forma no tendrás el error. Espero haber sido claro y que te sirva mi respuesta. Saludos
Hola me gusto mucho tu video, pero tengo una consulta, yo quisiera asociar dos bases con el comando merge m:1, debido a q quiero pasar una base q es a nivel de hogar a una base q es a nivel individual, pero me sale un mensaje q las variables llaves no identifican de forma unica las observaciones en los datos de uso, q podría hacer, muchas gracias.
Hola Nicole, imagino que quieres llevar de tu base de hogar (using) a tu base de individuos (master). Por lo cual en la base de individuos puede repetirse el id de hogar, es por eso que usas la "m" del m:1 . Sin embargo en la base de hogar solo debe existir una vez cada registro de hogar (por eso el 1 después de los ":"), revisa la variable de id porque debe existir algún registro duplicado (incluso si hay 2 missing por ejemplo ya cuenta como repetido). Espero que te sirva. Saludos !
Como cargaste la base de datos deuda a tu do?
Hola Sofía, para incorporarlo a la base de datos directamente incorporo la base "deuda.dta" uniéndola a la base ya cargada ("propiedades.dta") (minuto 17 del video). Si tu consulta es sobre cómo hice para pasar del archivo de excel a la base en formato dta te recomiendo pasar a ver este video: th-cam.com/video/Y9wcXqYdH84/w-d-xo.html. Gracias ! Saludos
Hola, una consulta. Cuando uso merge me aparece este error: variable cod_provincia does not uniquely identify observations in the
using data r(459); A que se debe? (solo me funciona el merge m:m pero entiendo que no es recomendable usarlo)
Hola Elias, eso sucede porque en la base que querés unir (base using) con la actualmente abierta contiene valores repetidos de la variable cod_provincia por lo cual STATA no sabe cual de todas las observaciones asociar. Tené en cuenta que si hay más de una observación con missing (vacío) en esa variable también cuenta como repetido. De ser este el caso, directamente deberías eliminar todas las observaciones que tengan missing en esa variable. Espero te sirva, saludos.
Muy bueno el video, explica super bien. Lo que si me arroja un problema al momento de unir las bases, me aparece esto: variable id_identificacion does not uniquely identify observations in the using data
yo me aseguré de que las variables sean iguales, quiero unirlas por merge m:1 .
Cuál podría ser mi error?
Tal vez tengas valores duplicados, en la variable que estás usando para hacer el merge.
Hola, me puedes ayudar con este error por favor " variable _iptcmex does not uniquely identify observations in the using data" por favor
Y que pasa si tengo más de 100 variables en 3 bases de datos y las quiero unir con merge, voy a tener que estar viendo 300 variables para ver si concuerdan o no? :/