Я пытаюсь объединить много текстовых файлов в один CSV-файл, но на данный момент мне трудно загрузить даже один текстовый файл.Основная причина в том, что у каждого столбца есть переменный интервал, поэтому нет разделителя табуляции и запятой.Мой текстовый файл с данными выглядит следующим образом, за исключением тысяч записей.Я использовал AM для обозначения имен столбцов, которые имеют переменную длину, и описал тип данных под ним:
A B C D E F G H I J K L M
S10 i8 i8 i8 S10 S2 i8 i8 i8 i8 i8 S1 f8
Интервал между столбцами - вот где моя проблема.Я пробовал следующее:
file='example.txt'
col_locations = np.array([1, 34, 41, 52, 75, 79, 88, 99, 104, 109, 116, 121, 126])
col_locations = col_locations - 1
widths = col_locations[1:] - col_locations[:-1]
widths = np.insert(widths, 0, 1)
datatype =[('A', 'S10'), ('B', 'i8'), ('C', 'i8'), ('D', 'S10'), ('E', 'S2'), ('F', 'i8'), ('G', 'i8'), ('H', 'i8'), ('I', 'i8'), ('J', 'i8'), ('K', 'i8'), ('L', 'S1'), ('M', 'f8')]
data = np.genfromtxt(file, skip_header = 10, delimiter = widths, autostrip = False, dtype = datatype)
Там, где расположение столбцов было выбрано редактором, что неэффективно, поскольку некоторые текстовые файлы могут иметь немного другое расположение столбцов.Я не получаю сообщение об ошибке, но когда я печатаю (данные), он явно загружается неправильно.Даже если бы это было так, я не был бы счастлив с этим методом.Любой совет будет очень признателен.Спасибо.