Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Quién gana en el duelo entre SAS y R?

¿Quién gana en el duelo entre SAS y R?

SAS vs. R: ¿Quién es mejor?

Traducción | JosephYX

De la lista de información de recursos de SAS

Resumen

Aunque la industria todavía está dominada por SAS, R es Sin embargo, Se utiliza ampliamente en el mundo académico porque su naturaleza gratuita y de código abierto permite a los usuarios escribir y compartir sus propias aplicaciones. Sin embargo, muchos estudiantes que obtienen títulos relacionados con el análisis de datos tienen dificultades para encontrar trabajo debido a la falta de experiencia en SAS. Al mismo tiempo, tienen que enfrentar el dolor de la transición de la R con la que están familiarizados en la escuela a SAS. Lo ideal es conocer todos los lenguajes de programación posibles y utilizar el que mejor se adapte a tu situación laboral a la hora de trabajar. Por supuesto, esto es básicamente una quimera. Nuestro objetivo es demostrar las fortalezas de estos dos lenguajes muy diferentes y aprovecharlas juntas, al mismo tiempo que señalamos algunos de los conceptos erróneos y prejuicios de quienes ahora usan R después de no usar SAS durante muchos años, porque. han prestado poca atención al desarrollo y progreso de SAS.

Prólogo

La razón por la que elegimos SAS y R es porque actualmente son los dos lenguajes de programación más dominantes en el campo de la estadística. Ahora hemos notado un mal fenómeno, es decir, los usuarios que usan mucho R en el mundo académico creen que R tiene ventajas considerables en el mundo industrial dominado por SAS. Sin embargo, dominar estos dos software es muy importante para aquellos que quieren obtener un título. pequeña ventaja en el campo del análisis de datos, es crucial para que los jóvenes alcancen el éxito. Los malentendidos y preferencias de los profesores por un determinado software a menudo conducen a una orientación desfavorable para los estudiantes. Por lo tanto, es necesario señalar aquí: Profesores, no sean perezosos, las preferencias subjetivas por un determinado idioma afectarán las perspectivas financieras de los estudiantes.

SAS a menudo tiene algunas actualizaciones (un poco lentas, notas de sxlion), y los programadores que no son SAS a menudo no lo saben porque no tienen seguimiento técnico. El módulo de dibujo SAS es un ejemplo de rápido desarrollo y crecimiento. Sin embargo, muchas personas no notan estas actualizaciones y todavía usan R para dibujar. Otro ejemplo menos conocido de SAS es la facilidad con la que se pueden personalizar funciones, que es el punto fuerte de R. Este procedimiento SAS (PROC) tiene una verificación de sintaxis integral, documentación extensa y soporte técnico; sin embargo, es posible que un nuevo usuario no sepa que estas herramientas están disponibles, o ni siquiera sepa que existen; Además, SAS también cuenta con excelentes cursos de capacitación, recursos para compartir redes y grupos de usuarios y una gran cantidad de libros sobre diferentes temas relacionados. Conocer y utilizar estas técnicas y herramientas de forma adecuada puede ayudar a reducir el miedo a utilizar SAS.

Discusión de temas relacionados

Este artículo se centra en algunos malentendidos comunes encontrados en nuestra universidad. Aquí comparamos y enumeramos las ventajas y desventajas de los dos idiomas. Por supuesto, hay muchos más debates en marcha, pero en este artículo discutiremos los más comunes. Esperamos aclarar malentendidos y brindar la mayor información posible a los analistas que no están al día con R o SAS.

Nuevos avances en métodos estadísticos

SAS

Ventajas: El software y los algoritmos de SAS han sido probados y SAS cuenta con soporte técnico para resolver rápidamente las necesidades de los usuarios. Si es necesario, SAS intentará incorporar nuevos métodos en los pasos existentes, como agregar una opción o agregar una nueva declaración, para que el usuario no necesite aprender otro paso del procedimiento. SAS también publica boletines informativos que detallan las actualizaciones de software.

Desventajas: Las actualizaciones y mejoras son lentas.

R

Ventajas: los usuarios pueden implementar rápidamente nuevos métodos o encontrar paquetes de software existentes. Es fácil aprender y comprender nuevos métodos porque los estudiantes pueden ver las funciones en el código.

Desventajas: las actualizaciones de documentos R las realizan los usuarios, por lo que los nuevos métodos no se depuran ni prueban bien. Los desarrolladores están dispersos por todas partes y no trabajan juntos para desarrollarse como equipo.

En este tema, las ventajas y desventajas de SAS y R son complementarias. Para R, algunas personas piensan que su código es abierto y se puede ver cómo funciona R, lo cual es más fácil de entender para personas con experiencia relevante.

Sin embargo, para SAS, sus pasos de procedimiento están preinstalados y una gran cantidad de fórmulas matemáticas se almacenan en el archivo para diferentes declaraciones (Declaraciones) y opciones (Opciones). Si el usuario realmente quiere ver el programa subyacente, esto también es muy fácil de lograr. Para los usuarios de ambos idiomas, ya sean estudiantes u otros usuarios, no hay diferencia entre los dos idiomas con solo ejecutar el código. Cuando ejecuta SAS, no necesita saber qué está haciendo. De manera similar, cuando ejecuta R, no necesita saber las funciones que llama en segundo plano. Todo lo que debes hacer es seguir las instrucciones.

Dibujo

SAS

Ventajas: El módulo de dibujo SAS es cada vez más flexible, sofisticado y fácil de usar. En algunos pasos del proceso de análisis (PROC), ODS Graphics puede generar automáticamente algunos gráficos sin necesidad de código adicional. Esto ofrece a los usuarios una opción adicional, es decir, pueden utilizar el gráfico predeterminado para generar un gráfico o pueden crear su propio gráfico personalizado.

Desventajas: El lenguaje de plantilla (TL) detrás de los gráficos es voluminoso y difícil de usar, especialmente para principiantes. Las nuevas funciones avanzadas, como los gráficos interactivos, también son difíciles de dominar para los principiantes.

R

Ventajas: puede generar fácilmente gráficos hermosos y también puede usar declaraciones de bucle para generar animaciones.

Desventajas: las funciones de gráficos en R no tienen nada que ver con el análisis estadístico, y el trazado y el análisis son independientes entre sí. Los usuarios deben decidir por sí mismos qué gráficos son apropiados y su eficacia depende de sus preferencias y antecedentes estadísticos. Aunque cambiar los gráficos para conseguir una dimensión o ángulo concreto no es un asunto sencillo.

La falta de capacidades de gráficos en versiones anteriores a SAS9.2 es una de las principales razones por las que R es más atractivo. Una de las mejores características de R es la alta calidad y la facilidad de uso de sus capacidades de gráficos. Sin embargo, el uso actual de SAS/GRAPH con gráficos ODS y el proceso SG agrega capacidades gráficas al software. El uso combinado de gráficos ODS y PROCS permite a los usuarios generar fácilmente gráficos de presentación relevantes para el análisis. Cada vez hay más pasos de proceso de dibujo específicos, como PROCSGPLOT, SGPANEL y SGSCATTER, que por supuesto requieren cierto código para implementarse. Además, existen otras buenas opciones de trazado en SAS, como SGDESOGNER y SAS Enterprise Guide.

Funciones y código reutilizable

SAS

Ventajas: SAS tiene una gran cantidad de funciones y funciones personalizadas que se pueden utilizar en los pasos de DATOS y PROC. Además, es un lenguaje de macros poderoso y omnipotente que también puede ser utilizado por pasos de DATOS y pasos de PROC. Las variables macro se pueden definir como tipos locales o globales.

Desventajas: escribir funciones personalizadas y código de macro detallado requiere un conocimiento profundo de programación para garantizar la corrección.

R

Ventajas: Escribir funciones en R es muy simple y los usuarios también pueden compartir sus funciones con otros usuarios cargando sus propias funciones en R-CRAN.

Desventajas: escribir funciones personalizadas requiere un conocimiento profundo de programación para garantizar la corrección. Las variables son variables estrictamente locales. En este punto, ambos software tienen pros y contras similares. Los primeros usuarios de SAS dependían en gran medida de la escritura de macros para ejecutar sus propias funciones personalizadas, razón por la cual los usuarios de R las encontraban ineficientes y torpes. Sin embargo, la versión SAS 9 de PROC FCMP permite a los usuarios escribir funciones personalizadas, y la versión SAS 9.2 permite a los usuarios llamar a estas funciones en pasos de DATOS y PROC. Esto es útil para funciones estadísticas simples, pero también se pueden implementar funciones estadísticas más complejas a través del lenguaje IML.

Ambos lenguajes, SAS y R, se enfrentan a cómo utilizar funciones de forma eficaz y correcta, lo que requiere que los usuarios tengan una profunda experiencia en programación en el proceso de escritura de funciones. En un buen nivel, un programador necesita saber lo que está escribiendo; el peligro es que otra persona pueda descargar una macro SAS o un paquete P y utilizarlo sin conocer su funcionamiento interno o incluso su sexo.

Por tanto, con un conocimiento adecuado de las macros y funciones, conviene compartirlas y aplicarlas a necesidades específicas.

Software gratuito

SAS

Ventajas: SAS tiene una versión OnDemand del software, que se proporciona de forma gratuita a las instituciones que otorgan títulos.

Desventajas: True SAS y JMP no son gratuitos. La versión OnDemand tiene algunas restricciones sobre qué sistema operativo se puede utilizar y se ha informado que es lenta.

R

Ventajas: R es completamente gratuito.

Desventajas: El software de código abierto plantea problemas de seguridad para las grandes empresas.

SAS ofrece alternativas gratuitas a las instituciones educativas que los profesores pueden utilizar en el aula. Preste atención al proceso de instalación y velocidad de OnDemand. En resumen, SAS y JMP no son gratuitos y las empresas necesitan una licencia para utilizar el software. R se puede instalar de forma gratuita, pero muchos blogueros que participan en el debate creen que si las empresas que actualmente utilizan SAS usan R, costará recursos y recursos financieros que exceden con creces la tarifa de licencia de SAS, como reescribir código, crear nuevos equipos, Reclutamiento de nuevos profesionales y más. Y para las empresas cuyos resultados de análisis deben soportar estrictos requisitos de inspección, SAS puede ser más adecuado. Las pequeñas empresas que no cuentan con un marco de análisis existente pueden considerar si elegir software pago (SAS) con una larga historia y abundantes recursos, o elegir uno que sea gratuito pero que requiera otras inversiones iniciales (como conocimientos previos de los empleados, redacción y depuración de código). ) Software(R). En última instancia, desde una perspectiva de tiempo y dinero, los costos de SAS y R probablemente sean más o menos los mismos.

Soporte al usuario

SAS

Ventajas: SAS tiene abundantes materiales de referencia en línea, soporte técnico profesional, cursos de capacitación profesional y muchos libros excelentes publicados. unir grupo de usuarios y comunidad en línea. Los problemas de SAS se pueden informar directamente al departamento de soporte técnico, y ellos trabajarán con los usuarios para resolverlos.

Desventajas: Realmente inesperado.

R

Ventajas: R tiene un buen manual de ejemplo, materiales de referencia en línea, listas de correo de R y reuniones de R.

Desventajas: Los usuarios dependen de otros usuarios para sus opiniones y sugerencias sobre el software. Debido a que los desarrolladores de R están dispersos por todo el mundo, los usuarios de todo el mundo carecen de contacto. El paquete (Paquete) no está escrito por el equipo central de desarrollo de software R, lo que genera imperfecciones en el programa y, a veces, incluso dudas sobre la exactitud de los resultados. Además, es difícil encontrar directamente una persona o equipo trabajando en un problema específico.

El excelente soporte brindado por SAS es un punto destacado de su diseño de producto centrado en el cliente. Las ventajas del soporte SAS son ideales para principiantes, mientras que la gran cantidad de detalles también beneficiará a los usuarios experimentados. El confuso material de referencia de R y la falta de soporte técnico dificultan la búsqueda de ayuda. Esto va en contra de las intenciones originales de los desarrolladores de R.

Procesamiento de datos

SAS

Ventajas: SAS puede procesar datos de cualquier tipo y formato. El paso DATOS está diseñado exclusivamente para la gestión de datos, por lo que SAS es bueno para procesar datos. Con sus ricas opciones, SAS puede procesar muy bien big data, y el ensamblaje de tablas y PROC SQL también pueden reducir el tiempo de ejecución.

Desventajas: en el paso DATOS, el paso DATOS en SAS tiene un algoritmo de bucle no explícito, por lo que es necesario cambiar el pensamiento de programación del usuario para cumplir con la lógica operativa de SAS.

R

Ventajas: Inicialmente se consideró que R era más adecuado para big data. Es muy eficiente en el diseño de operaciones matriciales y de clasificación. R también puede realizar muy bien varias simulaciones de datos basadas en análisis.

Desventajas: el diseño de R se centra más en cálculos estadísticos y funciones de dibujo, por lo que la gestión de datos lleva más tiempo y no es tan clara como en SAS. Una de las razones principales es que es difícil dominar un buen procesamiento de datos en R para todos los diferentes tipos de datos.

La importancia del procesamiento de datos a menudo se pasa por alto en la programación estadística, pero de hecho es muy crítico porque los datos reales son muy pobres y no se pueden aplicar directamente al análisis. Los estudiantes que usan R exclusivamente a menudo tienen expectativas poco realistas sobre los datos que obtienen, y aprender SAS es una forma eficaz de descubrir cómo organizar los datos sin procesar. SAS puede gestionar y analizar conjuntos de datos grandes y complejos, mientras que R se centra más en el análisis.

Cuando se trata de datos complejos, la estructura de datos orientada a objetos de R encontrará muchos problemas, y R también carece de un proceso de bucle inherente. En SAS, la aplicación de herramientas de estandarización a menudo implica las siguientes operaciones: fusionar conjuntos de datos complejos que contienen una gran cantidad de datos faltantes y luego generar y modificar variables en ellos. En R, la realización de operaciones complejas de procesamiento de datos no está estandarizada y, a menudo, conduce a procesos más complejos.

La comparación del tiempo de ejecución del software SAS y R depende de la tarea. Por ejemplo, SAS puede aumentar la velocidad de ejecución configurando MEMLIB para que use memoria (en lugar de disco duro) como R. Pero en R, no existe tal controlador de hardware y solo se puede ejecutar usando memoria.

Instalación

SAS

Ventajas: Todas las funciones y autorizaciones de análisis de SAS se empaquetan e instalan en su conjunto. Actualizar el certificado de autorización es muy fácil.

Desventajas: Instalar por primera vez o actualizar a una nueva versión lleva mucho tiempo y es algo engorroso. Pero es 1000 veces más fácil que enseñar a los estudiantes a utilizar el software en clase. Hoy en día, cada vez más estudiantes utilizan portátiles Mac en clase, pero SAS no tiene una versión para Mac, lo que significa que estos estudiantes no pueden utilizar SAS.

R

Ventajas: R y su interfaz de usuario más utilizada, RStudio, son fáciles de instalar y abrir en entornos Windows, Mac y Unix, y la velocidad de instalación es muy rápida.

Desventajas: Para ejecutarlo, debe conocer el paquete de programa que satisface las necesidades y luego buscar, instalar y comprender las funciones específicas. En el momento de la publicación del artículo original, había 4379 paquetes disponibles y este número aumenta cada día. Si bien ofrece más opciones, también aumenta el tiempo y la dificultad de la búsqueda.

Es difícil para los usuarios obtener SAS y la primera instalación también es problemática. Pero una vez completada la instalación, hay muy pocas preguntas sobre el software en sí y no se necesitan paquetes ni pasos adicionales para un análisis en particular. En R, por el contrario, la instalación es muy sencilla, pero para análisis adicionales es necesario instalar paquetes adicionales, perdiendo el tiempo ahorrado instalando el software.

Informes

SAS

Ventajas: SAS utiliza muchos pasos de proceso útiles para generar informes detallados y atractivos.

Desventajas: Los procesos que pueden proporcionar informes más detallados, como TABULAR, INFORMAR, etc., tendrán una curva de aprendizaje difícil de superar antes de poder utilizarlos de forma correcta y eficaz.

R

Ventajas: En términos de informes, R tiene muchas herramientas poderosas. El paquete Sweave puede crear archivos PDF que contienen texto, tablas y gráficos. Los gráficos se pueden decorar con comandos LaTeX y R. Otro paquete nuevo, Knitr, puede generar rápidamente contenido web con menos restricciones de formato.

Desventajas: R no tiene una forma pautada de generar informes, por lo que requiere cierto esfuerzo en programación. La generación de informes es una dirección relativamente nueva para R, por lo que no es tan simple y rápida como SAS. En R, Sweave y Knitr son los paquetes líderes para la generación de informes, pero también son difíciles de aprender.

Los usuarios que utilizan informes pesados ​​deben comprender estas diferencias. Aunque lleva algún tiempo aprender las funciones de informes de SAS, es muy valioso y tiene una gran flexibilidad una vez que se domina. Es posible que aprender la función de generación de informes de R desde el nivel más básico no requiera tanto tiempo como SAS.

Conclusión

Podemos ver que resolver el debate entre R y SAS es tres en uno. Primero, como en cualquier comunidad de programación estadística, sabemos que no hay un ganador final en esta PK. Ambos softwares tienen sus pros y sus contras. Tienen la necesidad de existir, y en la enseñanza académica, también tienen la necesidad de existir.

Se lograrán mejores resultados si los estudiantes pueden identificar sus necesidades y aplicarlas adecuadamente. Enseñar a los estudiantes solo un software es limitante y les impide desarrollar su potencial al aprender otro software. En segundo lugar, los usuarios deben mantener actualizada su caja de herramientas. Tanto SAS como R tienen excelentes sitios web de aprendizaje que presentan los últimos avances tecnológicos. El sitio web de soporte técnico de SAS tiene muchas de las actualizaciones más recientes, como áreas de enfoque, boletines electrónicos, fuentes RSS y blogs. El sitio del blog R contiene muchas noticias y ejercicios aportados por los usuarios. En tercer lugar, lo ideal es aprender ambos programas e integrarlos en su análisis. Hay muchas formas de intentarlo aquí, como usar las funciones IML de SAS e IML/Studio de SAS (IML es un complemento de SAS), o usar la declaración SAS X para ejecutar comandos externos y convertir código R en comandos SAS en SAS. correr. Para los usuarios de R, al convertir la interfaz de usuario de R a SAS, pueden utilizar ambos software al mismo tiempo. Al utilizar ambos software, el procesamiento y análisis de datos se vuelve más eficiente y satisfactorio para todos los usuarios.