Lo he usado SASdurante 15 años, y he comenzado a usarlo Rseriamente 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 DATAni PROC SQLprocedimientos porque no son necesarios (este último es más eficiente SAScuando 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 Ry requiere mucho menos código.
El principal problema que he encontrado es la memoria. No todos los paquetes R permiten WEIGHTespecificaciones de tipo, por lo que si tiene SASconjuntos de datos con variables utilizadas en FREQo REPLICATEdeclaraciones, puede tener problemas. He examinado los paquetes ffy bigmemoryen 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 Ry 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 SASGUI 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 SASa R. Los encontré útiles para tratar de averiguar cómo traducir algunos SAScomandos R.
Actualización: una cosa que me volvía loco cuando viene a Res que Rno asume todo es un conjunto de datos ( data frameen Rla 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 ifdeclaraciones funcionaran porque seguía recibiendo ayuda para las ifdeclaraciones con vectores (o tal vez matrices), mientras que necesitaba una ifdeclaració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 Rcomando (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 SASejemplos detallados de sintaxis y ejemplos trabajados con una explicación del estudio en el ejemplo, fue un shock bastante grande.