[英]Create Time series with MySQL data in R Shiny
我正在嘗試使用R Shiny開發儀表板,該儀表板從MySQL數據庫提取數據並以圖形形式表示。 我需要使用多個數據創建一個時間序列。 但是,當無法將MySQL中的時間戳值轉換為時間序列中的日期時間值時,就會出現問題。 以下是我的server.R
代碼:
con <- dbConnect(MySQL(),user="root",password="891208",host="localhost",dbname="openPos")
shinyServer(function(input, output) {
query1 <- reactive({ "SELECT sale_time,sum(quantity_purchased * item_unit_price)
AS revenue, sum(quantity_purchased * item_cost_price) AS cost,
sum(quantity_purchased * item_unit_price)-sum(quantity_purchased * item_cost_price) as profit
FROM ospos_sales, ospos_sales_items
WHERE ospos_sales.sale_id = ospos_sales_items.sale_id
GROUP BY sale_time"})
result1 <- reactive({dbGetQuery(con,query1())})
z <- reactive({ts(result1())})
output$ts <- renderPlot({p<-ts.plot(z())
print(p)})
output$table <-renderTable({z()})
該表的輸出將如下所示
誰能告訴我為什么我不能使用這些數據庫值創建時間序列?
如果保證時間戳是固定的時間間隔,那么您應該可以沿着ts(result1()[-1], start=myStart, frequency=myFrequency)
,在這里我要刪除第一列不想根據時間繪制時間-其他列將作為從myStart開始的時間序列繪制(您應該能夠從result1()[1,1]
提取該序列(我們不知道該格式為時間戳,因此很難提供指導),而myFrequency
將是您每單位時間進行的測量次數。
如果您沒有固定的時間點,則使用ts
完全是錯誤的事情-在這種情況下,大多數人似乎都在使用zoo
軟件包。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.