Backend- Bagaimana cara membuat file csv dengan hasil tersedia untuk diunduh di SHINY?

Bagaimana cara membuat file csv yang ditulis menggunakan kode di bawah ini tersedia bagi pengguna untuk diunduh? Bagaimana cara pengguna mengambil file ini menggunakan tombol unduh? tulis.csv(csv_write, file = "test.csv",row.names=FALSE, na="")


person Ayan Saraf    schedule 20.07.2017    source sumber
comment
Pencarian cepat menghasilkan shiny.rstudio.com/articles/download.html   -  person Remko Duursma    schedule 20.07.2017
comment
Skrip R sekunder saya menyelesaikan masalah dan memberikan solusi dalam bentuk file CSV. Saya hanya ingin tahu cara membuat file CSV tersedia untuk diunduh. Tautan tersebut menunjukkan cara mengunduh data dari database yang sudah ada sebelumnya di R. Terima kasih atas bantuannya! :)   -  person Ayan Saraf    schedule 20.07.2017
comment
Jika Anda menggunakan DT di aplikasi mengkilap Anda, Anda dapat menggunakan ekstensi tombol. Lihat ekstensi di sini: rstudio.github.io/DT/extensions.html. Sangat mudah untuk diterapkan, dari pengalaman saya ini lebih ramah pengguna dan Anda dapat mengaturnya sesuai keinginan menggunakan extend=collections dan memasukkan semua tombol yang diinginkan ke dalam daftar.   -  person Asayat    schedule 21.07.2017


Jawaban (1)


Dalam fungsi server Anda, Anda dapat menulis penangan unduhan:

output$downloadData5 <- downloadHandler(
    filename = function() {'test.csv'},
    content = function(file) {
      write.delim(ftext(), file, row.names = FALSE,sep="\t")
    }
  )

Dimana ftext() adalah fungsi yang mengembalikan kerangka data yang ingin Anda unduh sebagai csv.
UI Anda akan memiliki fungsi dashboardBody() di mana Anda dapat memiliki tombol unduh:

 tabPanel('First Touch Point Campaign Level', 
                 downloadButton('downloadData5', 'Download This Data !!',
                                style="display: block; margin: 0 auto; width: 230px;color: black;"),
                 dataTableOutput('datatable5'))   

ftext() adalah fungsi reaktif yang mengembalikan kerangka data. Kodenya seperti ini:

 ftext <- eventReactive(input$goButton, {
    df =   data.frame(replicate(10,sample(0:1,10,rep=TRUE)))     
    return(df)
  })
person anarchy    schedule 20.07.2017
comment
Terima kasih @Abhishek Kumar atas tanggapan cepatnya. Apa fungsi ftext() yang akan mengembalikan file csv yang tersedia untuk diunduh? - person Ayan Saraf; 20.07.2017
comment
Terima kasih. Ini membantu. Tapi apa sebenarnya write.delim itu? - person Ayan Saraf; 20.07.2017
comment
Ini seperti write.csv tetapi alih-alih nilai yang dipisahkan koma, Anda dapat memiliki nilai yang dipisahkan oleh pembatas apa pun. Anda dapat menggunakan write.csv juga - person anarchy; 20.07.2017