Чтобы получить нужную структуру, это немного сложно, потому что объект {"entry":{"a":1,"b":9,"c":"J"}}
Чтобы получить эту структуру, вам нужно иметь именованный список
lst <- list( list(a = 1, b = 9, c = "J") )
attr( lst, "names" ) <- "entry"
toJSON( lst, auto_unbox = TRUE )
# {"entry":{"a":1,"b":9,"c":"J"}}
Поэтому каждая строка ваш data.frame должен быть именованным списком
res <- lapply( seq_len( nrow( df ) ), function(i) {
lst <- list( as.list( df[i, , drop = F] ) )
attr( lst, "names" ) <- "entry"
lst
})
## add the 'table'
res <- list( table = res )
toJSON( res, auto_unbox = TRUE, pretty = TRUE )
# {
# "table": [
# {
# "entry": {
# "a": 1,
# "b": 9,
# "c": "J"
# }
# },
# {
# "entry": {
# "a": 2,
# "b": 5,
# "c": "K"
# }
# }
# ]
# }