Bueno … mi opinión va a ser muy parcial, ya que estoy totalmente enamorado de los productos Microsoft Visual XYZ y los usaré desde el principio (Visual C ++ 6 en el pasado remoto, Visual Studio hoy). Personalmente, considero que Visual Studio de hoy es el mejor entorno de programación * jamás creado por nadie . Pero el módulo R actual carece de alguna funcionalidad que es crucial para mí. Por lo tanto, necesito usar RStudio, que también me gusta mucho.
/ * Lo uso para programar aplicaciones de escritorio y web en C #, hacer informes en la plataforma de Reporting Services, administrar y consultar bases de datos de SQL Server. / /
Solo puedo esperar que algún día pueda permanecer completamente dentro del ecosistema VS, pero aún no hoy.
- ¿Está bien incluir una variable no significativa en un modelo lineal generalizado (GLM)?
- ¿Cómo analizar los datos en R? ¿Cómo hago para el análisis? Tengo datos y quiero analizar, ¿qué debo hacer?
- Como analista de negocios de TI, ¿cómo pasar de un fondo de depósito de datos a análisis de datos y proyectos de inteligencia empresarial?
- ¿Cuánta experiencia en programación necesitaría para tomar el curso de especialización en ciencia de datos de Coursera?
- ¿Puedo convertirme en un buen científico de datos o ingeniero de aprendizaje automático si no tengo experiencia de mercado en el desarrollo de software?
OK, todos conocemos el alcance de la funcionalidad proporcionada por RStudio. Este es el estándar de oro, una línea de base para cualquier otro IDE para R
¿Pero qué hay de VS? Déjame responder a tus preguntas una por una:
– Depuración . VS tiene el mejor depurador que he visto. Y esto también se aplica a R. Me encanta la capacidad de VS: inspeccionar variables “visualmente” y mostrar su contenido en una cuadrícula. Pero RStudio me permite hacer lo mismo.
Alguna prueba. Vamos a depurar esta función:
Funciona de la siguiente manera:
> fn1 (1: 3, 3: 1, “hey”)
p1 p2 p3 p4 p5
1 1 3 oye 4 soy 1
2 2 2 oye 4 soy 2
3 3 1 oye 4 soy 3
En la captura de pantalla podemos ver que las funciones con puntos de interrupción en el interior están marcadas con un punto rojo (aquí: fn1). ¡Bueno!
Dentro de la función más anidada (en sapply):
Bien, ¿no es así?
Probemos esto en Visual Studio. Comencemos a depurar:
En cuanto a lo bueno. Comenzó y enumeró muy bien los elementos en el entorno de llamada y los parámetros. Ahora pasemos a la función más anidada (en sapply):
OKAY. Ambos IDEs hacen bien su trabajo. ¿Qué realiza / muestra mejor? Es una cuestión de tu gusto. Me gustan ambos.
Por cierto, VS puede mostrar el contenido de una variable cuando se pasa el cursor del mouse sobre ella:
- Vista previa de objetos R. Creemos algún objeto y comparemos cómo se muestra en ambos IDE:
OK, hace el trabajo. No es muy elegante, solo una salida de la función ” str “.
> str (datos)
Lista de 6
$ df: ‘data.frame’: 3 obs. de 2 variables:
.. $ a: int [1: 3] 1 2 3
.. $ b: chr [1: 3] “A” “B” “C”
$ vec: int [1: 3] 1 2 3
$ m: int [1: 3, 1: 3] 1 2 3 4 5 6 7 8 9
$ f: función (p)
..- attr (*, “srcref”) = Clase ‘srcref’ atómica [1: 8] 4 20 4 39 20 39 4 4
.. .. ..- attr (*, “srcfile”) = Clases ‘srcfilecopy’, ‘srcfile’
$ lst: Lista de 3
.. $ num: num 1
.. $ chr: chr “A”
.. $ df: ‘data.frame’: 1 obs. de 3 variables:
.. .. $ a: num 1
.. .. $ b: chr “A”
.. .. $ c: logi NA
$ NA: logi NA
Ahora Visual Studio:
Bueno, puedes estar de acuerdo o no, pero esto me parece mucho más legible. Puedo plegar / desplegar cualquier “rama” del árbol de estructuras anidadas. También puede exportar los datos a CSV directamente desde aquí. No funciona con listas, pero es bastante lógico conocer la naturaleza anidada de ellas. Bastante bien, ¿eh?
Tan lejos, tan bueno. Enserio ?
Algo salió mal. VS no reconoció `NA` como el nombre R válido. De hecho, no hay nombres no válidos en R (usando la “notación”).
¿Pero es este un gran problema? No lo creo, ¿quién demonios nombraría variables como “NA”? ¿Para qué?
Como podemos ver a continuación, VS reconoce la “notación correctamente”, por lo que solo la “NA” genera un problema. No me importa, de verdad.
¿Qué más agradable podemos ver? ¡Todas las columnas son redimensionables! ¿Por qué RStudio todavía no puede hacer esto? No lo entiendo …
VS:
RStudio:
Pero RStudio tiene otra habilidad súper genial: autocompletar “nombres extraños”:
Visual Studio no es tan inteligente como RStudio. Reconoce el nombre de la variable y lo muestra en la lista, pero al escribir “12 … [ctrl] + [espacio]” no se desplaza la lista. Eso es malo: necesito desplazar la lista manualmente.
- Compatibilidad con RMarkdown : ambos IDE permiten generar documentos a partir de archivos RMD. Sabemos cómo RStudio maneja RMD y portátiles, así que permítanme centrarme solo en VS.
OK, entonces se agrega el soporte básico. Probémoslo:
Bueno. Pero la gran ventaja de RStudio es el soporte para portátiles interactivos , podemos previsualizar RMD ad hoc . Los cuadernos RMD aún no son posibles con VS.
Hay un complemento que muestra archivos MD (markdown), pero el contenido debe ser pregenerado, solo texto estático . No puede simplemente colocar el código R en el archivo MD y esperar que se ejecute el código (esto se puede hacer con RMD). Si desea mostrar un gráfico, debe existir como una imagen normal generada antes:
- Prepara el gráfico
> png (“c: /tmp/plot1.png”)
> trama (1:10)
> dev.off ()
dispositivo nulo
1
2. Incruste como un archivo de imagen estática
Esto definitivamente no es una opción. Como dije, el soporte para RMD es muy básico en VS, limitado solo a llamar a pandoc desde el menú, nada más.
- Vista previa de marcos de datos : muy básica, sin filtrado, como en RStudio.
- Soporte para la creación de paquetes : aún no hay soporte (y no estoy seguro de si se va a agregar)
- Soporte para gráficos : solo un soporte estándar. Se agregó una barra de herramientas muy agradable que presenta la historia de los gráficos, dividida por dispositivos gráficos. Realmente me gusta esta característica.
- Soporte para múltiples monitores : esto es por diseño en Visual Studio. Cada panel “acoplable” se puede mover a otro monitor. ¡No tiene precio al codificar! Me encantaría ver esta función en RStudio.
- Compatibilidad con el sistema de versiones : Git es compatible desde el primer momento. SVN – con complementos (Subversion para Visual Studio, integración de Visual Studio · TortoiseSVN)
Por último, pero no menos importante, VS es visiblemente más lento que RStudio en computadoras con poca cantidad de RAM y CPU más lenta. Esto se debe a que VS es un IDE enorme y multipropósito, y requiere una máquina poderosa para funcionar sin problemas. Bueno, eso no es un gran problema para el desarrollador de software o el científico de datos, que generalmente poseen unidades poderosas. Por otro lado, RStudio se puede usar en modo portátil, sin instalación y es mucho más liviano. Si planea llevar todo el entorno de programación con usted en una memoria USB (lo hago), entonces RStudio es la única opción. Si ya juega con las soluciones de Microsoft, probablemente tenga todo preinstalado y listo para funcionar. Todo depende de tu perfil.