read - Leer el archivo Stata 13 en R
read.csv r (6)
¿Hay alguna manera de leer un archivo de datos de Stata versión 13 en R?
He intentado hacer lo siguiente:
> library(foreign)
> data = read.dta("TEAdataSTATA.dta")
Sin embargo, tengo un error:
Error en read.dta ("TEAdataSTATA.dta"):
no es un archivo .dta de Stata versión 5-12
¿Podría alguien señalar si hay una manera de solucionar esto?
Hay un nuevo paquete llamado Haven, por Hadley Wickham, que puede cargar archivos dta Stata 13 (así como archivos SAS y SPSS)
library(haven) # haven package now available on cran
df <- read_dta(''c:/somefile.dta'')
Consulte: https://github.com/hadley/haven
Hay un nuevo paquete para importar archivos Stata 13 en un data.frame en R.
Instale el paquete y lea un conjunto de datos Stata 13 con read.dta13 ():
install.packages("readstata13")
library(readstata13)
dat <- read.dta13("TEAdataSTATA.dta")
Actualización : readstata13 importa en la versión 0.8 también archivos de Stata 6 a 14
Más sobre el paquete: https://github.com/sjewo/readstata13
Mientras tanto, el comando savepss se convirtió en miembro del archivo SSC y se puede instalar en Stata con: findit savespss
La página de inicio radyakin.org/transfer/savespss/savespss.htm sigue funcionando, pero el programa debe instalarse desde el SSC ahora, no desde la ubicación beta.
No estoy familiarizado con el estado actual de los programas de R respecto a su capacidad para leer otros formatos de archivo, pero si alguien no tiene instalado Stata en su computadora y R no puede leer una versión específica de los archivos dta
de Stata, Pandas
en Python puede hacerlo ahora. La gran mayoría de tales conversiones.
Básicamente, los datos del archivo dta
se cargan primero utilizando la función pandas.read_stata
. A partir de la versión 0.23.0
, la codificación y los formatos admitidos se pueden encontrar en una respuesta mía relacionada .
Luego, uno puede guardar los datos como un archivo csv
e importarlos usando las funciones estándar de R, o en su lugar usar la función pandas.DataFrame.to_feather
, que exporta los datos utilizando un formato de serialización construido en Apache Arrow. Este último tiene un amplio soporte en R, ya que fue concebido para promover la interoperabilidad con Pandas
.
Si tiene Stata 13, puede cargarlo allí y guardarlo como formato Stata 12 usando el comando saveold
(consulte la help saveold
). Después, llevarlo a R.
Si tiene, Stata use13
, puede usar el comando escrito por el usuario use13
, (por Sergiy Radyakin) para cargarlo y guardarlo allí; luego a R. Puede instalar use13
ejecutando ssc install use13
.
Los detalles se pueden encontrar en http://radyakin.org/transfer/use13/use13.htm
Otras alternativas, aún con Stata, involucran la exportación del formato Stata a otra cosa que R lea, por ejemplo, archivos basados en texto. Ver help export
dentro de Stata.
Actualizar
Al iniciar Stata 14, saveold
tiene una opción de version()
, que permite guardar en formatos .dta de Stata tan antiguos como Stata 11.
Yo tuve el mismo problema. read.dta13
, read.dta
pero nada funcionó. Entonces probé lo más fácil y menos esperado: MS Excel! Se abrió maravillosamente. Lo guardé como .csv
y lo usé en R !!! ¡¡¡¡Espero que esto ayude!!!!