Итак, у меня почти нет опыта программирования, но я решил попробовать и научиться немного Python оптимизировать анализ данных для моих исследований в области неврологии, так как это сэкономит мне сотни часов.
Я решил научиться использовать pandas, потому что из того, что я собрал, это был бы самый интуитивно понятный способ работы с типами данных, которые использует мой проект. В основном я занимаюсь поведенческими исследованиями на животных, используя оперантные боксы, которые работают на очень странном и не интуитивном программном обеспечении, сделанном каким-то парнем, который работал в нашем университете. Это программное обеспечение выводит файл CSV с общей структурой, которая выглядит примерно так:
- файл начинается с STARTDATA в первой ячейке
- первые 10 строк - это, по сути, бесполезные метки и заголовки в столбце 1
- затем есть заголовок для первой темы
- , затем набор из 4 таблиц, разделенных пустыми строками и словами
- , затем нижний колонтитул, который всегда одинаков для любого subject
- эта структура повторяется для каждого субъекта (всего 12)
- файл заканчивается ENDDATA после последнего нижнего колонтитула
Изображение структуры данных: https://imgshare.io/images/2020/03/26/Annotation-2020-03-26-182445.jpg
Пример данных: https://wetransfer.com/downloads/f7119d8a4ce6a018dc1c138cdcd0662920200326194129/bc1104
Сначала у меня возникла проблема с указанием pandas, как читать этот странный формат. После дня возни мне удалось решить эту проблему, пропустив первые бесполезные строки.
Мой вопрос сейчас заключается в том, какой самый эффективный способ извлечь все столбцы с полезными данными для каждого субъекта и выполнить с ним некоторые вычисления? Столбцы всегда будут одинаковыми для каждого предмета, но строки различаются в зависимости от количества испытаний, проведенных этим предметом.
Я заранее прошу прощения за неопределенность моего запроса, но любая помощь действительно будет оценена. Это немного ошеломляет, когда пытаешься понять все без руководства ...