Lo he usado SAS
durante 15 años, y he comenzado a usarlo R
seriamente en los últimos 6 meses, con algunos ajustes por un par de años antes de eso. Desde una perspectiva de programación, R
las manipulaciones de datos se realizan directamente, no hay equivalentes DATA
ni PROC SQL
procedimientos porque no son necesarios (este último es más eficiente SAS
cuando hay mucha manipulación de datos para hacer desde fuentes de datos externas, por ejemplo, datos administrativos). Esto significa que, ahora que me estoy acostumbrando, la manipulación de datos es más rápida R
y requiere mucho menos código.
El principal problema que he encontrado es la memoria. No todos los paquetes R permiten WEIGHT
especificaciones de tipo, por lo que si tiene SAS
conjuntos de datos con variables utilizadas en FREQ
o REPLICATE
declaraciones, puede tener problemas. He examinado los paquetes ff
y bigmemory
en R, pero no parecen ser compatibles con todos los paquetes de R, por lo que si tiene conjuntos de datos muy grandes que requieren análisis que son relativamente poco comunes y se han agregado, es posible que tenga problemas con la memoria.
Para la automatización, si lo tiene SAS macros
, debería poder programar el equivalente R
y ejecutarlo como lote.
Para codificar R
, estaba usando Notepad++
y configurando el idioma R
, y ahora estoy descubriendo las alegrías de R Studio
. Ambos productos son gratuitos y marcan el lenguaje como la SAS
GUI de sintaxis mejorada (solo he usado la pantalla de sintaxis SAS
).
Hay un sitio web y un libro relacionado para que las personas cambien de SAS
a R
. Los encontré útiles para tratar de averiguar cómo traducir algunos SAS
comandos R
.
Actualización: una cosa que me volvía loco cuando viene a R
es que R
no asume todo es un conjunto de datos ( data frame
en R
la jerga), porque no es un paquete estadístico de la manera que SAS
, SPSS
, Stata
, etc son. Entonces, por ejemplo, me tomó un tiempo hacer que las if
declaraciones funcionaran porque seguía recibiendo ayuda para las if
declaraciones con vectores (o tal vez matrices), mientras que necesitaba una if
declaración que funcionara data frames
. Por lo tanto, es probable que las páginas de ayuda se deban leer más detenidamente de lo normal, ya que deberá verificar que el comando que desea ejecutar funcione con el tipo de objeto de datos que tiene.
La parte que todavía me vuelve loco al aprender un nuevo R
comando (por ejemplo, el método de análisis en un paquete contribuido) es que la ayuda para los comandos a menudo no es completamente autónoma. Iré a la página de ayuda para tratar de aprender el comando y las notas de uso que a menudo ...
contienen. A veces, tratar de averiguar qué puede o debe ir donde ...
está me ha llevado a un círculo recursivo. La relativa brevedad de las notas de ayuda, que provienen de SAS
ejemplos detallados de sintaxis y ejemplos trabajados con una explicación del estudio en el ejemplo, fue un shock bastante grande.