我想通过制作一个应用程序来使用plumber
库,该应用程序需要14天的历史数据并返回指数平滑预测。
问题是我不熟悉将大量数据(具有多个值的参数)传递给API。我的问题可以总结如下:
我应该如何准备R中的数据以传递给API?
如何在plumber
中准备API以接收时间序列数据?
下面是一些示例数据和一个功能,该功能可以实现我在R中想要的功能。
library(tidyverse)
# data to be passed to API
head(forecast::wineind,14)
#> Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov
#> 1980 15136 16733 20016 17708 18019 19227 22893 23739 21133 22591 26786
#> 1981 15028 17977
#> Dec
#> 1980 29740
#> 1981
#* Return Forecast Data
#* @list a The first number
#* @get /simple_fcast
function(){
ts() %>%
forecast::ets() %>%
forecast::forecast()
}
#> function(){
#> ts() %>%
#> forecast::ets() %>%
#> forecast::forecast()
#> }
由reprex package(v0.2.1)于2018-11-14创建
答案 0 :(得分:0)
答案是根据https://www.rplumber.io/docs/routing-and-input.html#
中的文档使用“消息正文”#' @post /user
function(req, id, name){
list(
id = id,
name = name,
raw = req$postBody
)
}
运行curl --data "id=123&name=Jennifer" "http://localhost:8000/user"
将返回:
{
"id": [123],
"name": ["Jennifer"],
"raw": ["id=123&name=Jennifer"]
}
我发现数组也可以传递给函数。