[R-es] Api R 
    Javier Nieto 
    mac_javi en hotmail.com
       
    Mie Jun 21 09:18:22 CEST 2017
    
    
  
Hola a tod en s, buenas noches
Tengo el siguiente problema:
Necesito ejecutar un script de R en un servidor remotamente, pues el script es parte de un sistema. Estoy utilizando el paquete plumber para realizarlo. Si tomo las funciones de ejemplo de la documentación, funciona:
#* @get /mean
normalMean <- function(samples=10){
  data <- rnorm(samples)
  mean(data)
}
#* @post /sum
addTwo <- function(a, b){
  as.numeric(a) + as.numeric(b)
}
lo llamo de esta forma y funcionan bien:
 curl "http://localhost:8000/mean"
 [-0.254]
$ curl "http://localhost:8000/mean?samples=10000"
 [-0.0038]
$ curl --data '{"a":4, "b":5}' http://localhost:8000/sum
 [9]
El último comando utiliza un el formato json, también funciona si lo hago de esta forma
curl --data @datos_sumar.json http://localhost:8000/sum
donde '{"a":4, "b":5}' esta dentro del archivo datos_sumar.json
La pregunta es, ¿cómo puedo pasarle un archivo json el cual dentro del código sea un dataframe?
He intentado con
#* @get /prueba
json <- function(df){
  require(jsonlite)
  print(ls())
  mydf <- fromJSON(df)
  mydf$sueldo <- c(20000, 22000, 0, 15000)
  mydf
}
y con el archivo con el contenido:
{"df":
[
  {"Name" : "Mario", "Age" : 32, "Occupation" : "Plumber"},
  {"Name" : "Peach", "Age" : 21, "Occupation" : "Princess"},
  {},
  {"Name" : "Bowser", "Occupation" : "Koopa"}
]
}
y así también pero no doy con la solución
[
  {"Name" : "Mario", "Age" : 32, "Occupation" : "Plumber"},
  {"Name" : "Peach", "Age" : 21, "Occupation" : "Princess"},
  {},
  {"Name" : "Bowser", "Occupation" : "Koopa"}
]
curl --data @empleados.json http://localhost:8000/prueba
¿Por favor alguien me podría ayudar?
muchas gracias
Saludos
	[[alternative HTML version deleted]]
    
    
Más información sobre la lista de distribución R-help-es