如何上传文件并在R中命名列? 目标
要在读取数据的闪亮应用程序中上载文件,请在显示绘图输出之前命名变量(列)并进行一些数据分析 参考闪亮应用程序 我正在使用Shiny gallery中的此应用程序作为参考: 我所尝试的: 在做了不同的分析之后,我想在许多输出中使用上传的数据。因此,我不是在如何上传文件并在R中命名列? 目标,r,shiny,R,Shiny,要在读取数据的闪亮应用程序中上载文件,请在显示绘图输出之前命名变量(列)并进行一些数据分析 参考闪亮应用程序 我正在使用Shiny gallery中的此应用程序作为参考: 我所尝试的: 在做了不同的分析之后,我想在许多输出中使用上传的数据。因此,我不是在renderable或renderPlot中读取文件,而是在server函数中读取文件: server <- function(input, output) { inFile <- reactive({input$file1
renderable
或renderPlot
中读取文件,而是在server
函数中读取文件:
server <- function(input, output) {
inFile <- reactive({input$file1})
sdf <- reactive({read.csv(inFile()$datapath, header=F)})
colnames(sdf()) <- c('Vehicle.ID', 'Time', 'Vehicle.class.no', 'Vehicle.type2',
'Vehicle.Length', 'Lane', 'Preceding.Vehicle.ID', 'Spacing','Spacing2', 'State',
'svel.mps', 'deltaV.mps', 'sacc', 'lane.change') }
server您最好在read.csv
server <- function(input, output) {
inFile <- reactive({input$file1})
sdf <- reactive({
read.csv(inFile()$datapath, header=F, col.names = c('Vehicle.ID', 'Time', 'Vehicle.class.no', 'Vehicle.type2',
'Vehicle.Length', 'Lane', 'Preceding.Vehicle.ID', 'Spacing','Spacing2', 'State',
'svel.mps', 'deltaV.mps', 'sacc', 'lane.change')
)
})
}
server另一种方法是使用action按钮
,然后在上载文件时检查文件的有效性。当某些东西被“触发”时,例如上传文件或按下按钮时,许多“观察事件”可能适合触发。此外,要进行一系列更改,最好基于标志(我承认,这有点混乱,但可以与Shiny一起使用,因为它没有像JS那样的正确回调框架)启动“更新”reactiveValue()
。尝试从sdf()
中删除()
。
server <- function(input, output) {
inFile <- reactive({input$file1})
sdf <- reactive({
read.csv(inFile()$datapath, header=F, col.names = c('Vehicle.ID', 'Time', 'Vehicle.class.no', 'Vehicle.type2',
'Vehicle.Length', 'Lane', 'Preceding.Vehicle.ID', 'Spacing','Spacing2', 'State',
'svel.mps', 'deltaV.mps', 'sacc', 'lane.change')
)
})
}
server <- function(input, output) {
inFile <- reactive({input$file1})
sdf <- reactive({
dd<-read.csv(inFile()$datapath, header=F)
colnames(dd) <- c('Vehicle.ID', 'Time', 'Vehicle.class.no', 'Vehicle.type2',
'Vehicle.Length', 'Lane', 'Preceding.Vehicle.ID', 'Spacing','Spacing2', 'State',
'svel.mps', 'deltaV.mps', 'sacc', 'lane.change')
)
dd
})
}