title: Warning: Error in match.arg: 'arg' must be NULL or a character vector
body: <p>I am trying to select the cell in the DataTable and show the corresponding position/value.
  But it seems not working... I ran the code from <a href="https://yihui.shinyapps.io/DT-selection/" rel="nofollow">the example cell code from Yihui</a> but still showing the same error as I got from my code:</p>
  
  <p><a href="http://i.stack.imgur.com/zvaSI.png" rel="nofollow">Warning: Error in match.arg: 'arg' must be NULL or a character vector
  Stack trace (innermost first):
      76: match.arg
      75: datatable
      74: widgetFunc
      73: func
      72: renderFunc
      71: output$x16
       4: 
       3: do.call
       2: print.shiny.appobj
       1: </a></p>
  
  <p>Below are part of my code.</p>
  
  <p>biTableMatrix function - It assign the values to a certain position in the matrix/df by the xpos (row) and ypos (column). Firstly it returned a matrix, but I thought the error might be caused by the object type (matrix instead of data.frame from the example), so I convert it to data.frame - not much help thou...</p>
  
  <pre><code># The following are in helper.R
  
  travelMeans &lt;- c('02', '04')
  prepareTwoMeans &lt;- function(travelMeans) {
    listx &lt;- subset(geodata[geodata$MeanCode==travelMeans[1],], select = -c( AreaFull,MeanName,MeanFull))
    listx &lt;- listx[order(listx$Percentage),] 
  
    listy &lt;- subset(geodata[geodata$MeanCode==travelMeans[2],], select = -c( AreaFull,MeanName,MeanFull,AreaCode))
    listy &lt;- listy[order(listy$Percentage),] 
  
    listx$xpos &lt;- seq(length=nrow(listx))
    listy$ypos &lt;- seq(length=nrow(listy))
  
    listx &lt;- merge(listx, listy, by.x = c("AreaName"), by.y = c("AreaName"), all=TRUE)
    return(listx)  
  }
  
  # This function generates the two-way table of two travel means
  biTableMatrix &lt;- function(travelMeans) {
    fullList &lt;- prepareTwoMeans(travelMeans)
    len &lt;- length(fullList$AreaName)
    biTableMat &lt;- matrix(data = "", nrow = len, ncol = len, dimnames = list(seq(length = len), seq(length = len)))#, 
  
    for (n in 1:len) {
      x &lt;- fullList$xpos[n]
      y &lt;- fullList$ypos[n]
      biTableMat[x,y] &lt;- as.character(fullList$AreaName[n]) #fullList$AreaCode[n]
    }
  
    return(as.data.frame(biTableMat) )
  }
  
  # The following are in server.R
    biTable &lt;- reactive({
      return(biTableMatrix(input$travelMeans))
    })
  
    output$biTable &lt;- DT::renderDataTable({
      DT::datatable(
       biTable()
       , selection = list(mode = "single", target = "cell")
       , extensions = list("Scroller", "RowReorder")
       , options = list(
          scrollX = 500
        , scrollY = 700
        , rowReorder = FALSE
       )      
     )}
      , options = list(
        searchHighlight = TRUE
      )
    )
  
   output$biTableText &lt;- renderPrint(input$biTable_cells_selected$value)
  </code></pre>
  
  <p>For reference, here is my ui.R</p>
  
  <pre><code>#Definte UI for the application
  ui &lt;- fluidPage(
  sidebarPanel(
      # The following part is groupCheckBox format for the travelMeans
      checkboxGroupInput(
        "travelMeans"
        , label = "Select the mean below:"
        , choices = meanChoices
        , selected = NULL
      )
  
      , br()
    ),
  
    #Show the map
    mainPanel(
      tabsetPanel(#type = "tabs",
          tabPanel("Single-Mean Table", DT::dataTableOutput("onetable"), hr())
  
        , tabPanel("Two-way table", DT::dataTableOutput("biTable"), hr(), verbatimTextOutput("biTableText"))
      )
  
      , position="center"
     , height= "auto"
    )
  )
  </code></pre>
  
  <p>Any help would be much appreciated!!</p>
  
  <p>Thanks!!</p>