Скажем, у меня есть CSV-файл с следующим форматом данных:Преобразования CSV данных для анализа и визуализаций
ID, Name, Gender, Q1
1, ABC, Male, "A1;A2"
2, ACB, Male, "A2;A3;A4"
3, BAC, Female, "A1"
Я хотел бы превратить его в следующий формат, чтобы мой инструмент виртуализации данных может обрабатывать его правильно:
ID, Name, Gender, Questions, Responses
1, ABC, Male, Q1, A1
1, ABC, Male, Q1, A2
2, ACB, Male, Q1, A2
2, ACB, Male, Q1, A3
2, ACB, Male, Q1, A4
3, BAC, Female, Q1, A1
Использование Text to Columns
функции в LibreOffice я могу легко отдельный Q1 колонка A1;A2
в разные колонки, как A1, A2
, но я застрял в транспозиции и повторяя строки.
Дополнительная информация:
Данные собираются с помощью формы Google, к сожалению, электронные таблицы Google хранить несколько ответов выбор вопрос в одной клетке с помощью точки с запятой-разделитель, как
A1;A2;A3...
, в то время как мой инструмент визуализации не может видеть эту изначальную структуру данных, обрабатывать их только как одну строку, что затрудняет объединение/группировку.В фактических данных (результаты опроса) У меня около 5000 записей, каждый из которых содержит несколько ячеек, требующих такой обработки, что приведет к таблице около 100 000 записей. Необходим способ автоматизации преобразования.
Инструмент я использую для анализа/визуализации данных «Tableau Public», у них есть Reshaper данные плагин для Excel, что полуавтомат such tasks (смотрите раздел Убедитесь, что каждая строка содержит только один элемент данных), но нет альтернативы LibreOffice.
У меня такая же потребность, как и для Tableau. Я действительно удивлен, что нет стандартных инструментов для преобразования между этими двумя форматами: кросс-таблица/широкоформатная <-> normalized/long –