Как записать мои вложенные структуры как список строк, а не список строк? - PullRequest
0 голосов
/ 10 октября 2019

У меня есть основной вопрос R. Я строю вывод списка со следующей структурой:

headerSpec <- list()
headerSpec$Statistics$columns <- list("item1", "item2", "item3")
headerSpec$Statistics$color = "#C6E0B4"

Я ожидаю, что при экспорте (через JSON) структура данных будет выглядеть примерно так:

headerSpec: {
  Statistics: [
    columns: [
      "item1",
      "item2",
      "item3"
    ],
    color: "#C6E0B4"
  ]
}

К сожалениювместо этого мои данные поступают как:

headerSpec: {
  Statistics: [
    columns: [
      [
        "item1"
      ],
      [
        "item2"
      ],
      [
        "item3"
      ]
    ],
    color: [
      "#C6E0B4"
    ]
  ]
}

Или, проще говоря, элементы, которые я ожидаю, чтобы быть типом данных String, вместо этого были List of String (с одним элементом, значением String),Я не являюсь родным для R, поэтому я прошу прощения, если терминология не верна.

Как мне написать эти элементы для получения желаемого результата?

Ответы [ 2 ]

1 голос
/ 10 октября 2019

Если вы используете jsonlite для экспорта, вы можете использовать опцию auto_unbox:

jsonlite::toJSON(headerSpec, auto_unbox = TRUE)
# {"Statistics":{"columns":["item1","item2","item3"],"color":"#C6E0B4"}}
1 голос
/ 10 октября 2019

Попробуйте распечатать список в символьном векторе:

headerSpec <- list()
headerSpec$Statistics$columns <- list("item1", "item2", "item3")
headerSpec$Statistics$color = "#C6E0B4"

headerSpec$Statistics$columns <- unlist(headerSpec$Statistics$columns)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...