问题描述
我在我的文本文件中没有得到正确的输入。在我写入的文本文件的每一列中,我只得到 NULL 值。例如,农场名称 = NULL。
有谁知道我为什么会得到这些 NULL 值以及如何解决它?我认为它确实覆盖错了。
这是我的脚本:
Library (shiny)
library(png)
library(shinyTime)
# Define the fields we want to save from the form
fields <- c("Farm name",'Date data entry',"Feed intake","Water intake","Time light on","Time light off","Feed phase","Eggs per week")
# Save a response
# ---- This is one of the two functions we will change for every storage type ----
saveData <- function(data) {
data <- t(data)
# Create a unique file name
Interovodatafromwebapp <- sprintf("%s_%s.csv",as.integer(Sys.time()),digest::digest(data))
# Write the file to the local system
write.table(data,file="myfile.txt",append=T,quote = T,sep=",",row.names=F,col.names=T)
}
# Load all prevIoUs responses
# ---- This is one of the two functions we will change for every storage type ----
outputDir <- "responses"
loadData <- function() {
# Read all the files into a list
files <- list.files(outputDir,full.names = TRUE)
data <- lapply(read.table(file = "myfile.txt",header = TRUE,sep = '.',fill = TRUE))
# Concatenate all data together into one data.frame
data <- do.call(rbind,data)
data
}
# Shiny app with 3 fields that the user can submit data for
shinyApp(
ui = fluidPage(
titlePanel("Interovo Egg Data Entry For Farmers"),sidebarPanel(
DT::dataTableOutput("responses",width = 10),tags$hr(),textInput('Farm_name','Farm name'),dateInput('Date_data entry','Date data entry'),numericInput("Feed_intake",'Feed intake',0),numericInput("Water_intake",'Water intake',timeInput("Time_light_on",seconds = FALSE),timeInput("Time_light_off",textInput("Feed_phase",'Feed phase'),numericInput("Eggs_per_week",'Eggs per week',actionButton("submit","Submit")),mainPanel(
img(src = "logointerovogroot.png",height = 62,width = 160),img(src = "WURfoto.png",height = 210,width = 280)),),server = function(input,output,session) {
# Whenever a field is filled,aggregate all form data
formData <- reactive({
data <- sapply(fields,function(x) input[[x]])
data
})
# When the Submit button is clicked,save the form data
observeEvent(input$submit,{
saveData(formData())
})
# Show the prevIoUs responses
# (update with current response when Submit is clicked)
#output$responses <- DT::renderDataTable({
#input$submit
#loadData()
#})
}
)
提前致谢! 达米安
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)