<p><div><div><div><div data-width="100" data-show-faces="false" data-send="true" data-layout="button_count" data-height="21" data-href="https://www.r-bloggers.com/r-quick-tip-upload-multiple-files-in-shiny-and-consolidate-into-a-dataset/"></div></div><div></div></div><div></div></div>
<div>
(This article was first published on <strong><a href="http://itsalocke.com/upload-multiple-files-in-shiny-and-consolidate-into-a-dataset/"> R – Locke Data</a></strong>, and kindly contributed to <a rel="nofollow" href="https://www.r-bloggers.com/">R-bloggers)</a> </div>
<div class="twitter-share"><a target="_blank" class="twitter-share-button" rel="nofollow" href="https://twitter.com/intent/tweet?url=http%3A%2F%2Fitsalocke.com%2Fupload-multiple-files-in-shiny-and-consolidate-into-a-dataset%2F&via=lockedata&%23038;related=stefflocke%3ASteph">Tweet</a></div>
<div></div>
<p>In <a target="_blank" rel="nofollow" href="https://cran.r-project.org/package=shiny">shiny</a>, you can use the <code>fileInput</code> with the parameter <code>multiple = TRUE</code> to enable you to upload multiple files at once. But how do you process those multiple files in shiny and consolidate into a single dataset?</p>
<p>The bit we need from shiny is the <code>input$param$fileinputpath</code> value.</p>
<p>We can use <code>lapply()</code> with <a target="_blank" rel="nofollow" href="https://cran.r-project.org/package=data.table">data.table</a>‘s <code>fread()</code> to read multiple CSVs from the <code>fileInput()</code>. Then to consolidate the data, we can use <a target="_blank" rel="nofollow" href="https://cran.r-project.org/package=data.table">data.table</a>‘s <code>rbindlist()</code> to consolidate these into a dataset.</p>
<p>For more info on using data.table for consolidating CSVs, read my post on <a target="_blank" rel="nofollow" href="https://itsalocke.com/r-quick-tip-collapse-a-lists-of-data-frames-with-data-table/"><code>rbindlist()</code></a></p>
<p>If you wanted to process things other CSVs then you might consider alternative libraries, and of course, you don’t just need to put them all into one big table.</p>
<p>View the code on <a target="_blank" rel="nofollow" href="https://gist.github.com/stephlocke/c3299992ef3ac3efe1f978bd1cb0b4b2">Gist</a>.</p>
<div class="twitter-share"><a target="_blank" class="twitter-share-button" rel="nofollow" href="https://twitter.com/intent/tweet?url=http%3A%2F%2Fitsalocke.com%2Fupload-multiple-files-in-shiny-and-consolidate-into-a-dataset%2F&via=lockedata&%23038;related=stefflocke%3ASteph">Tweet</a></div>
<p>The post <a target="_blank" rel="nofollow" href="http://itsalocke.com/upload-multiple-files-in-shiny-and-consolidate-into-a-dataset/">R Quick Tip: Upload multiple files in shiny and consolidate into a dataset</a> appeared first on <a target="_blank" rel="nofollow" href="http://itsalocke.com/">Locke Data</a>. Locke Data are a data science consultancy aimed at helping organisations get ready and get started with data science.</p>
<p>
<div>
<div>To <strong>leave a comment</strong> for the author, please follow the link and comment on their blog: <strong><a href="http://itsalocke.com/upload-multiple-files-in-shiny-and-consolidate-into-a-dataset/"> R – Locke Data</a></strong>.</div>
<hr>
<a rel="nofollow" href="https://www.r-bloggers.com/">R-bloggers.com</a> offers <strong><a rel="nofollow" href="https://feedburner.google.com/fb/a/mailverify?uri=RBloggers">daily e-mail updates</a></strong> about <a title="The R Project for Statistical Computing" rel="nofollow" href="https://www.r-project.org/">R</a> news and <a title="R tutorials" rel="nofollow" href="https://www.r-bloggers.com/search/tutorial">tutorials</a> on topics such as: <a title="Data science" rel="nofollow" href="https://www.r-bloggers.com/search/data%20science">Data science</a>, <a title="Big Data" rel="nofollow" href="https://www.r-bloggers.com/search/Big%20Data">Big Data, <a title="R jobs" rel="nofollow" href="https://www.r-users.com/">R jobs</a>, visualization (<a title="ggplot and ggplot2 tutorials" rel="nofollow" href="https://www.r-bloggers.com/search/ggplot2">ggplot2</a>, <a title="Boxplots using lattice and ggplot2 tutorials" rel="nofollow" href="https://www.r-bloggers.com/search/boxplot">Boxplots</a>, <a title="Maps and gis" rel="nofollow" href="https://www.r-bloggers.com/search/map">maps</a>, <a title="Animation in R" rel="nofollow" href="https://www.r-bloggers.com/search/animation">animation</a>), programming (<a title="RStudio IDE for R" rel="nofollow" href="https://www.r-bloggers.com/search/RStudio">RStudio</a>, <a title="Sweave and literate programming" rel="nofollow" href="https://www.r-bloggers.com/search/sweave">Sweave</a>, <a title="LaTeX in R" rel="nofollow" href="https://www.r-bloggers.com/search/LaTeX">LaTeX</a>, <a title="SQL and databases" rel="nofollow" href="https://www.r-bloggers.com/search/SQL">SQL</a>, <a title="Eclipse IDE for R" rel="nofollow" href="https://www.r-bloggers.com/search/eclipse">Eclipse</a>, <a title="git and github, Version Control System" rel="nofollow" href="https://www.r-bloggers.com/search/git">git</a>, <a title="Large data in R using Hadoop" rel="nofollow" href="https://www.r-bloggers.com/search/hadoop">hadoop</a>, <a title="Web Scraping of google, facebook, yahoo, twitter and more using R" rel="nofollow" href="https://www.r-bloggers.com/search/Web+Scraping">Web Scraping</a>) statistics (<a title="Regressions and ANOVA analysis tutorials" rel="nofollow" href="https://www.r-bloggers.com/search/regression">regression</a>, <a title="principal component analysis tutorial" rel="nofollow" href="https://www.r-bloggers.com/search/PCA">PCA</a>, <a title="Time series" rel="nofollow" href="https://www.r-bloggers.com/search/time+series">time series</a>, <a title="finance trading" rel="nofollow" href="https://www.r-bloggers.com/search/trading">trading</a>) and more...
<img height="1" alt="" width="1" src="http://feeds.feedburner.com/~r/RBloggers/~4/EeUDoW625Uw"></a></div>