Разделение блоков данных на несколько фреймов данных

#python #dataframe #csv

Вопрос:

У меня есть файл .txt следующего формата:

 Test_Type: SOT Test_Date: 10/18/2017 Test_Time: 07:39:27 Condition_Name: SOT Condition_Number: 1 Trial_Number: 1 Sway_Gain: 1.0 Data_Rate(hz): 100 Accessory_Channels: 0 Test_Duration(sec): 20 Number_of_Data_Points: 2000  UNITS (lb) (lb) (lb) (lb) (lb)  DP LF RR SH LR RF  1 90.04 20.31 0.00 18.36 81.64  2 90.04 20.31 0.00 18.75 81.64  3 90.04 20.31 0.00 18.75 81.64  ... 2000 88.48 19.14 0.00 20.31     

В файле есть несколько блоков данных, каждому из которых предшествует категориальный заголовок. Некоторые блоки состоят из 2000 строк, другие-из 500 строк.

Моя цель состоит в том, чтобы разделить файл на отдельные фреймы данных или .csv, по одному на блок данных.

что-то вроде:

 for line in lines:  if line contains "Test_Type":  create new .csv  

В конце я планирую объединить все новые файлы обратно в один фрейм данных с извлеченными категориальными данными.

Спасибо!!

Каждый выходной кадр данных будет выглядеть примерно так:

выход

Конечный кадр данных будет выглядеть следующим образом (со столбцом, согласовывающим категориальные данные):

окончательный комбинированный df

Общая проблема, которую я пытаюсь решить, заключается в том, как извлечь категориальные данные для каждого блока данных и представить их в столбце в df, который является точным для каждого отдельного блока (т. Е. Тип теста, условие и испытание для каждой точки данных).

Комментарии:

1. Можете ли вы привести пример того, как будет выглядеть ваш выходной кадр данных с этого входа?

2. просто добавлено изображение образца вывода!