Вы можете использовать библиотеку jsonlite и функцию split data.frame.
Сначала преобразуйте ваш json в объект R, затем разделите data.frame по переменной, а затем переписайте объект json.
inputjson <- '{"expenseRecords": [ { "date_expensed": "2019-04-01", "exp_cat_description": "Air Travel", "totalamountUSD": 10, "totalRecords": 2 }, { "date_expensed": "2019-04-01", "exp_cat_description": "Breakfast", "totalamountUSD": 11, "totalRecords": 1 },{ "date_expensed": "2019-04-02", "exp_cat_description": "Air Travel", "totalamountUSD": 10, "totalRecords": 2 }]}'
library(jsonlite)
input <- fromJSON(inputjson)
input$expenseRecords <- split(input$expenseRecords[,-1], input$expenseRecords$date_expensed)
output <- toJSON(input)