Давайте сделаем это проще и посмотрим только на первую строку:
myList <- list(a1 = "anything")
# vs
myList <- list()
myList[[1]] <- list(a1="anything")
В первой конструкции слот 1 в верхнем списке называется «a1» и содержит «что-нибудь». Во второй конструкции слот 1 верхнего списка не имеет названия и содержит список, первый слот которого называется «a1» и содержит «что угодно».
Чтобы сделать их похожими, попробуйте:
myList <- list()
myList[["a1"]] <- "anything"