2012-06-21 24 views
5

Tenemos un conjunto de scripts R, que procesan algunos datos y producen algunos resultados. Queremos hacer de estas secuencias de comandos disponibles para los usuarios básicos, que no están acostumbrados a comandos de R - queremos proporcionarles alguna interfaz gráfica de usuario agradable, lo que permitiría a:Interfaz gráfica de usuario para el script R

  • datos de importación/exportación de MS Excel/Acceda fácilmente (también es compatible con Copiar/Pegar, si es posible)
  • permiten al usuario cambiar la configuración/los parámetros del proceso
  • se debe ejecutar en MS Windows.

¿Existe un entorno de scripting simple que permita desarrollar una GUI tan agradable para nuestros scripts R lo más rápido posible? No es necesario que esté en lenguaje R.

+0

Probablemente hace mucho más de lo que necesita/quiere, pero [R Commander] (http://socserv.mcmaster.ca/jfox/Misc/Rcmdr /) tiene todas estas características. – Chase

+0

@Chase, gracias, esto es algo bueno, pero ¿esto realmente me permite crear fácilmente interfaz gráfica de usuario GUI para nuestros scripts personalizados? A primera vista, parece una interfaz para la funcionalidad R más utilizada, no un marco para hacer mis propias interfaces. – TMS

+0

buena pregunta, honestamente solo he usado R Commander una vez. Lo recuerdo de UseR! Conferencia hace unos años que muchas personas habían hecho interfaces GUI personalizadas y la mayoría de ellas tenían el logo de RCMDR en la esquina ... esta es la razón por la que publiqué como comentario y no como respuesta :) – Chase

Respuesta

4

Existe la herramienta RExcel que incorpora R como un complemento de Excel por lo que la interfaz principal es Excel con R haciendo los cálculos en segundo plano. Puede configurar una hoja para que el usuario ingrese sus datos, luego resalta un cuadro y luego elige un elemento del menú o hace clic en un botón y los resultados se colocan en otra celda (o conjunto de celdas). Sin embargo, tenga en cuenta que RExcel y el programa de comunicación usuario no son gratuitos.

Otra opción es crear su propia función de interfaz gráfica en R, luego hacer que la interfaz de usuario se ejecute automáticamente cuando inicie R (consulte? ARRANQUE) y configurarlo en la máquina de los usuarios. Ya hice esto para clientes que no sabían nada de R, simplemente hicieron doble clic en el ícono en el escritorio (Windows), minimizaron la ventana principal R cuando se abrió, interactuaron con la interfaz gráfica de usuario que había programado para ejecutar (I usó tcltk, pero hay otros) y vio la salida provista.

Puede copiar datos de Excel haciendo que el usuario seleccione los datos y haga clic en copiar, luego en su programa ejecute newdata <- read.delim('clipboard') y los datos estarán en el marco de datos llamado 'newdata', puede usar write.table(outdata, file='clipboard', delim='\t') para poner el los datos de los 'outdatos' del marco de datos en el portapapeles y el usuario puede pegarlos en Excel (u otros programas).

También existe el paquete Rcmdr que proporciona una GUI general para R (herramientas básicas) pero también tiene un mecanismo donde puede crear sus propios menús y cuadros de diálogo para usar con la GUI.

+0

Gracias Greg, lo voy a ver y tal vez regrese con una pregunta. Gracias. – TMS

2

No dijo que tenía que ser un programa de escritorio. Así que Jeroen Ooms' hilarante proyecto openCPU valdría la pena echarle un vistazo. Básicamente lo llama computación estadística en la nube. Los chicos han estado realmente activos recientemente (ahora que revisé el sitio web nuevamente, me di cuenta de que era nuevo de nuevo).

Además, su trabajo anterior stockplot o ggplot demo es muy interesante. Especialmente una breve mirada al stockplot le da una impresión rápida de su enfoque.

Afaik, se utiliza RApache y se crea la bonita GUI de interfaz con EXTJS. Creo que la documentación puede explicar el enfoque mucho mejor que yo.

creo R en un servidor web - particularmente para el uso de la intranet es una buena solución (dependiendo del tamaño de su empresa), debido a que:

  • que es independiente de la plataforma, los clientes pueden utilizar sus navegadores favoritos
  • el desarrollo local y el despliegue de guión y pakacges incluso enteros R es fácil
  • de notificación/publicación es gran fuerza de R y se puede facilitar el uso de una arquitectura basada en web (ver paquetes como knitr o sweave
+0

Gracias ran2, esta es una respuesta interesante. Lo echaré un vistazo y es posible que vuelva con una pregunta. – TMS

Cuestiones relacionadas