R-闪亮的应用:读取csv并将其转换为数据框/ ts对象

时间:2018-11-12 13:21:27

标签: r dataframe shiny time-series

我想创建一个Forecast Shiny App。用户应该能够上传csv或xls文件。使用文件中的数据,应该进行预测。

由于该文件每次可能是另一个文件,因此我创建了一个反应式读入:

data <- reactive ({
    file1 <- input$file
    if(is.null(file1)){return()}
    read.table(file = file1$datapath, sep = input$sep, header = input$header)
         })

为了能够进一步处理数据并创建简单图,我创建了一个数据框:

output $ plot <-renderPlot({

#create dataframe
df <- as.data.frame(data())
plot(df)

)}

我的输入文件是一个简单的csv,其中仅包含一列带有pageimpressions的列。该列的标题也就是pageimpressions。现在df <- as.data.frame(t(data()))部分创建了一个如下所示的df:

enter image description here

有人知道如何创建一个看起来像这样的“普通”数据框:

enter image description here

AND / OR:有人知道如何直接创建上层数据框的ts对象吗?

非常感谢!

(使用的软件包:library(shiny))

1 个答案:

答案 0 :(得分:0)

至少对于“正常”数据帧,我不确定为什么要运行此行:

<ListItemText
  primary={obj.label}
  classes={{
    root: classes.listItemText,
    primary: classes.listItemText
  }}
/>

df <- as.data.frame(t(data())) 已经通过“ read.table()/ read.csv()”被读入R中,已经是“正常”数据帧。如果您运行data(),则应该获得class(data())

[1] "data.frame"创建了数据帧的转置,但似乎您不那么想?

您可以尝试t()plot.ts()

对于ts.plot()包来说,它非常有用,尽管您需要一些时间来对应我在上面的数据集中看不到的数据点。