¿Cómo empezar y aprender R?


16

He intentado varias veces "hacerlo por mi cuenta", pero con un éxito limitado. Soy un usuario casual de SPSS y tengo experiencia en SAS.

Agradecería un puntero o dos de alguien que tiene antecedentes similares y ahora usa R.


2
Esto probablemente debería ser wiki comunitario. Otras cuestiones de relevancia son los recursos para el aprendizaje de R , ¿Dónde puedo encontrar tutoriales de I útiles , y el subproceso de software meta stat lista de recursos para la I .
Andy W

Ver nuestro post meta, etiquetado FAQ : meta.stats.stackexchange.com/questions/793/... .
Andre Silva

Respuestas:


17

Creo que la única forma de entrar es la próxima vez que necesite hacer algo en SAS o SPSS, inicie R en su lugar . Al principio es difícil y al principio pasarás mucho tiempo en tareas simples. Cuando te quedes atascado en Google, el problema y probablemente encontrarás una solución. Puede verificar sus resultados con SPSS o SAS.

Con el tiempo, empiezas a acostumbrarte y los trabajos comienzan más rápido. Hacer referencia al código antiguo siempre ayuda. Ojalá encuentres algo de orgullo en el progreso que realizas.

Luego, a medida que avanza y lee blogs más este sitio, comienza a aprender el verdadero poder de R, los trucos y todo lo que es posible con él.


2
Un gran problema: el sistema de ayuda de R es bueno cuando sabes de qué quieres detalles. No es tan bueno si no tienes idea de lo que necesitas hacer. Así que encuentre un recurso que le muestre los conceptos básicos como: cómo leer datos, cómo guardar su trabajo hasta el momento, cómo hacer y guardar gráficos, cómo obtener ayuda, etc. Por ejemplo, si dice: "Hola, Quiero pronosticar algo, así que escribiré "pronosticar para obtener ayuda". No se te ocurrirá nada. En R, el término habitual es "predecir". ME ENCANTA R, pero tengo que mantenerlo real. Además, tenga en cuenta que R es un lenguaje de programación, a diferencia de SAS o SPSS: más difícil al principio, mejor después.
Wayne

13

Algunos consejos:

  1. La respuesta de @Glen es clave. Necesitas forzar a hacer algo en R, incluso cuando sabe que puede hacerlo fácilmente con SPSS.
  2. Hace unos meses hice una lista de libros de programación de R que no intentaban enseñar estadísticas, sino que simplemente describían a R.
  3. Suscríbase a los canales RSS de r-bloggers.com y a la etiqueta R stackoverflow . Me resulta muy útil leer los artículos para obtener pistas y consejos.

7

Este libro podría estar en tu callejón: R. Muenchen (2008). R para usuarios de SAS y SPSS .

He tenido experiencias muy similares comenzando R varias veces. Aunque soy un usuario de Stata. Muenchen e Hilbe (un editor de tiempo completo a cargo de la sección de software estadístico de The American Statistician ) tienen un libro similar R para usuarios de Stata, y lo encontré entretenido a veces, cuando proporcionan un segmento de código de 20 líneas para algo que es factible en tres líneas en Stata. (Por otro lado, por supuesto, hay situaciones en las que simplemente no puede hacer una cosa orientada a objetos de manera significativa en Stata.) Supongo que el mensaje es que debe abstraerse de su experiencia SPSS y SAS, ya que R piensa en términos totalmente diferentes. sobre casi todo. Su experiencia previa probablemente será más un obstáculo, al menos en el caso de R (probablemente puede volver a aprender de SPSS a Stata con bastante rapidez si fuera necesario). No hay más conjuntos de datos rectangulares, y no hay TARJETAS para leer. Tendría que eventualmente aprender a hacer cosas R, en lugar de tratar de hacer cosas SPSS en R.


Me gusta mucho el libro de Muenchen
Peter Flom - Restablecer a Monica

7

He estado en tus zapatos, de hecho, probablemente todavía estoy en tus zapatos, ya que uso R y SAS regularmente para diferentes tareas. Como se mencionó anteriormente, hay "R para usuarios de SAS", y también puede considerar mirar el blog "SAS y R": http://sas-and-r.blogspot.com/ y el libro que lo acompaña, que proporciona ejemplos trabajados en SAS y R.

En términos generales, la experiencia de cambiar entre SAS y R es algo desorientadora, porque son filosóficamente diferentes. En esencia, SAS no es un lenguaje de programación, es una potente interfaz de línea de comandos. R ... es un lenguaje de programación. R tenía más sentido para mí cuando comencé a aprender Python y C que cuando conocía SAS. Es cierto que es un lenguaje de programación creado para estadísticas, pero ahí lo tienes.

Si bien el enfoque de obligarse a encender R en lugar de SAS es decente, sugeriría algo más cuando comience, ya que sumergirse primero en un nuevo proyecto y un nuevo software es aterrador. Repite un viejo análisis . Tome un documento que haya escrito, un conjunto de problemas que haya hecho, lo que sea en SAS (o SPSS) y repítalo en R. Paso a paso, busque en Google y haga preguntas aquí sobre la marcha. Esto tiene tres ventajas:

  1. No matarás accidentalmente un nuevo proyecto con la decisión "Debería aprender un nuevo idioma".
  2. Ya sabes la respuesta. Esto significa que puede estar seguro de haber llegado a la respuesta correcta en R.
  3. Ilustrará mejor las diferencias entre los diferentes idiomas. "Wow, eso fue mucho más fácil de hacer en R ...", "Nunca había visto ese tipo de gráfico", etc.

7

Aquí hay muchos buenos consejos, pero creo que lo más útil que podrías hacer es sentarte con alguien que conozca R por un par de horas. Probablemente me quité años de mi vida aprendiendo R solo; el solo hecho de que alguien dijera: "No, es mucho más fácil hacerlo de esta manera" me habría ahorrado tanto dolor. Creo que esto es especialmente crucial con respecto a aprender a hacer cosas R, en lugar de cosas SPSS en R, como menciona StasK, pero también evitará que pases horas persiguiendo pequeños errores de sintaxis estúpidos.

No parece que Pittsburgh tenga un Grupo de usuarios R, lo que me desconcierta, pero debe haber muchos Rgonautas en las cercanías. Intenta encontrarlos. Soborna a alguien para que solo salga contigo mientras trabajas en todo lo descrito anteriormente: traducir un proyecto antiguo a R suena especialmente bien.


¡Creo que determinar los efectos en la salud de superar la curva de aprendizaje R sería un excelente estudio!
N Brouwer

5

Estoy de acuerdo con @Matt Parker en que hay muchos buenos consejos. Una cosa que quiero enfatizar en mi respuesta es que es vital entender la programación básica si quieres trabajar con R.

Programación básica

Mi sitio favorito para aprender cosas nuevas es Khan Academy, que tiene algunos videos sobre secuencias de comandos de Python que son muy similares a R y en realidad hay un complemento que le permite usar Python en SPSS que puede encontrar aquí . He usado mucho el complemento de Python haciendo combinaciones complejas, contando sucesos, creando tablas personalizadas, etc. Es una muy buena manera de comenzar con la programación.

¿Cuál es el trato con R?

Conozco varios lenguajes de programación diferentes y lo que hace que R sea especial es sus vectores / matrices y su salida gráfica. Recomiendo aprender las diferentes formas de manipular vectores porque son la base de los marcos de datos y la mayoría de los datos que usará, aquí hay un buen tutorial . Cuando se trata de la salida gráfica, hay buenas funciones para la mayoría de los gráficos disponibles y probablemente no necesite preocuparse por esta parte.

Otra parte fundamental de R es la función install.packages ("my_package_name") que hace que buscar nuevos componentes e instalarlos sea sencillo, algo que muchos otros lenguajes dificultan considerablemente.

Comenzando en R

Mi sitio R favorito es Quick-R y sugeriría probar algunos de sus códigos. Una vez que haya obtenido el mismo gráfico, intente cambiar los colores, la cantidad de columnas, la etiqueta, etc. También hay muchos tutoriales R en YouTube que probablemente puedan ayudarlo a comenzar.

Aprendizaje al examinar el código de otros

Una excelente manera de aprender R es tratar de entender cómo funcionan las diferentes funciones. Escriba el nombre de las funciones (sin paréntesis), presione enter y obtendrá el código; mire su código e intente comprender lo que hace. La función debug () también puede ser útil cuando se intenta entender cómo funcionan las cosas.

Usando R sin codificación

Sí, puede elegir usar R en un entorno similar a SPSS :

install.packages("Rcmdr")
library(Rcmdr)

R en comparación con SAS

También he trabajado con SAS que es un lenguaje muy poco intuitivo que difiere mucho de todos los demás lenguajes de programación y, desafortunadamente, es probable que tenga muy poco que pueda usar de su experiencia SAS cuando trabaje con R. Dicho eso, R es mucho más fácil que SAS ;-)

GUI

Es bueno tener un buen ambiente para trabajar cuando usas R, mi recomendación para principiantes es RStudio .

¡Buena suerte!


Je, no estoy de acuerdo con que SAS sea más difícil que R. Son ... diferentes. Si uno proviene de una tradición de lenguajes de programación, R puede tener más sentido que SAS. Pero realmente cuando se trata de eso, son diferentes: como dije en mi publicación, SAS es más una interfaz de línea de comandos que un lenguaje de programación adecuado.
Fomite

Estoy de acuerdo en que son muy diferentes y es más una opinión que una declaración. Hay algunas características básicas que me faltaban al tratar de aprender SAS, donde lo más básico era una buena función de ayuda, nunca profundicé en SAS. Una cosa que he notado es que muchos que usan SAS copian su sintaxis anterior sin entender. He visto a personas escribir código donde ni la mitad del comando se usa. Es por eso que creo que una vez que te acostumbras a la programación, aprender R no es tan difícil. Buena ayuda, resaltado de sintaxis, una comunidad en línea rica vale mucho y saber que la programación es realmente útil 2011.
Max Gordon

El sistema de ayuda de SAS se concentra en sus documentos de soporte. Pero sí, es principalmente que son bastante diferentes. Molesto, hay funciones de ambos idiomas que son algo más difíciles de duplicar en el otro, lo que me deja ocasionalmente usando ambos. Lo que realmente preferiría no hacer.
Fomite

4

Creo que la respuesta mencionada por @Glen es muy importante, sin embargo, para empezar necesitas algunos libros.

Con respecto a RI creo que necesitas 3 libros.

Primero, para hacer estadísticas con R, puedo recomendarle R en acción . Robert mantiene un sitio R y un blog muy activos (http://www.statmethods.net/) y su libro y sus esfuerzos son fantásticos.

En segundo lugar, es posible que necesite un libro para programar en R, ya que R no es solo un programa de estadísticas sino también un lenguaje poderoso. La programación es muy útil cuando se realizan análisis complejos o al combinar análisis, o para escribir funciones que realizan lo mismo en diferentes conjuntos de datos. Sólo puedo recomendar El arte de la programación R . Aquí no se presentan estadísticas importantes, pero podrá comprender cómo combinar, conectar y automatizar sus análisis.

Tercero, necesitarás un libro de referencia , una enciclopedia. Te puedo recomendar The R Book . Este no es el libro que leerá de principio a fin, pero es el libro que abre de vez en cuando para ver si algunas cosas son posibles, si hay otras formas de analizar datos, etc.

Y lo más importante, deje de usar cualquier otra cosa e intente resolver todos sus problemas en R. Resolver problemas de la mejor manera de aprender.

Además, antes de que lo olvide. Hay algunos blogs maravillosos de algunas personas fantásticas que escriben sobre todo tipo de cosas que uno puede hacer en R. Busque y encontrará. Muy recomendable es el sitio de agregación http://www.r-bloggers.com/ donde se recopilan R blogs relevantes.

¡Que te diviertas!


1

Si pudiera agregar dos elementos a las muchas buenas sugerencias aquí ya;

1) Encuentra un grupo R. Sé que en el área de Boston hay un grupo R bastante fuerte. Está patrocinado por RStudio , que por cierto es uno de los MEJORES IDE.
Ve a Meetup o al grupo de Google o RSeek.org para buscarlos.

2) Una cosa más, descubrí que aprender R por mi cuenta es una subida empinada, pero mi consejo general es seguir buscando libros que ayuden Y NO SE DETENGAN hasta encontrar el correcto.


1

Ingeniero de marketing:

Conozco sus problemas, ya que lo mejor y lo peor de R es demasiado funcional hasta que no sepamos por dónde empezar.

Primero, necesita saber cuál es el propósito que aprende R. Si solo quiere aprender un nuevo idioma, creo que SAS y R Blog pueden ser útiles, como usuario de SAS / SPSS.

Sin embargo, R no es tan difícil si se lo compara con SAS o SPSS, simplemente parece complejo debido a los paquetes y funciones cada vez mayores. Por lo tanto, le sugiero que pueda aprender desde cero utilizando los manuales o sitios web sugeridos, como Quick-R, por el autor de R in Action. Nota: R en acción es un buen libro para comenzar.

¿Qué pasa si usaste R para propósitos específicos? Entonces es mejor que eches un vistazo a la lista de R Book en R Project Web. Hay 129 libros relacionados con R y S en aplicaciones específicas, como Econometría, Gráfica, Modelado, etc.

Recientemente, estoy pensando en la plataforma interactiva de aprendizaje en línea de R Language y solicité comentarios aquí también. Es un proyecto de código abierto (aún no lanzado). Empecé a hacer un prototipo funcional con 3 lecciones básicas de lenguaje R. Puedes darle una oportunidad.

Espero que ayude :-)



0

Hay una versión temprana gratuita de R para usuarios de SAS y SPSS en http://r4stats.com . Ese sitio también tiene muchos de los ejemplos de libros que ahora se muestran como páginas web. Si tiene acceso a una biblioteca universitaria, generalmente tienen todos los libros de Springer R en línea de forma gratuita.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.