#javascript #json #excel
#javascript #json #excel
Вопрос:
Я создаю таблицу в Excel с 1000 вопросами, и когда конвертирую ее в JSON, я получаю:
[{
"QUESTION": "61771",
"ANSWERS": "2772718 ",
"CORRECT": "1,2,3,4"
},
{
"ANSWERS": "7271717"
},
{
"ANSWERS": "272727"
},
{
"ANSWERS": "6271717"
},
{
"QUESTION": "716171781",
"ANSWERS": "6171717",
"CORRECT": "1,2,3"
},
{
"ANSWERS": "7171616"
},
{
"ANSWERS": "287272"
},
]
Но мне нужно, чтобы перед «ВОПРОСОМ» все «ОТВЕТЫ» подключались к одному «ANSWERS» и делали массив на «CORRECT», вот так:
{
"QUESTION":"LALALLA",
"ANSWERS":["123214","123214","124214","12412414"]
"CORRECT":[1,2,3,4]
},
Как я могу быстро изменить / исправить этот JSON с помощью js или другого языка программирования?
Комментарии:
1. Не могли бы вы поделиться своей таблицей Excel? (или, по крайней мере, пример)
2. @Nanoo таблица
3. могу ли я быстро изменить , вопрос относительный. В днях, часах, минутах, секундах? Возможно, волшебные функции?
4. Попробуйте использовать этот онлайн-инструмент (у меня это сработало с вашей таблицей Excel)
5. @GetSet для меня это очень важно. Мой отец хочет практиковаться как можно быстрее)
Ответ №1:
Чтобы сделать это, вам нужен способ определить, какие ответы связаны с какими вопросами. Судя по вашим примерам данных, это не так.
Ответ №2:
Это то, что нужно?
код
let arr = [{
"QUESTION":"LALALLA",
"ANSWERS":"123214",
"CORRECT":"1,2,3,4",
},
{
"ANSWERS":"123214"
},
{
"ANSWERS":"124214"
},
{
"ANSWERS":"12412414"
}];
arr[0].CORRECT = arr[0].CORRECT.split(',').map((ele) => {
return parseInt(ele);
});
let answ = [];
arr.forEach((ele) => {
answ.push(ele.ANSWERS);
});
arr[0].ANSWERS = answ;
ВЫВОД
console.log(arr[0])
{
"QUESTION": "LALALLA",
"ANSWERS": [
"123214",
"123214",
"124214",
"12412414"
],
"CORRECT": [
1,
2,
3,
4
]
}
Комментарии:
1. Спасибо вам, но это не работает, когда я конвертирую в JSON несколько вопросов, подобных этому
2. извините, по телефону писать действительно сложно, а я хочу спать. можете ли вы подождать около 8-9 часов, когда я проверю ваш ответ?
Ответ №3:
Преобразуйте это в pandas в python pandas.read_json (имя) и попробуйте использовать transpose, melt и некоторые другие функции, предлагаемые pandas.
Комментарии:
1. Хотя это может сработать., предложение другого языка не отвечает на вопрос. Кроме того, ваш ответ очень расплывчатый: использование transpose, melt и некоторых других функций, предлагаемых pandas, может быть интуитивно понятным не для всех.