Я пытаюсь создать большой список для последующего добавления к фрейму данных panda, элементы которого соответствуют условиям данных в этой строке (т. Е. Базальное условие + некоторое лекарство ... и т. Д.).
Эти условия появляются в блоках; то есть первые 500 строк (соответствующие первым 500 кадрам данных изображения) соответствуют базальным условиям (поэтому каждый элемент должен быть «базальным»), следующие 500 с добавлением некоторого количества лекарственного средства и так далее.
Точный размер каждого из этих блоков и первой строки блока варьируется от эксперимента к эксперименту, поэтому в идеале код должен быть в состоянии генерировать эти блоки на основе чисел, которые я ввожу, определяя время различных условий для каждый эксперимент
Для этого я сначала создаю список «базальных» повторов в соответствии с общим числом строк, затем использую временные переменные, обозначающие начало каждого условия, чтобы перезаписать каждую запись из этого индекса в конец списка с помощью следующее условие. Код:
epochs = ['basal'] * frames
if ttx == True:
ttx_epoch = np.arange(ttx_t*freq,frames,1, dtype=int)
epochs[ttx_epoch] = 'TTX'
if lo_k == True:
lok_epoch = np.arange(lo_k_t*freq,frames,1, dtype=int)
epochs[lok_epoch] = 'Low K'
if hi_k == True:
hik_epoch = np.arange(hi_k_t*freq,frames,1, dtype=int)
print(hik_epoch)
epochs[hik_epoch] = 'High K'
при попытке запустить выдается сообщение об ошибке:
TypeError: в скалярный индекс могут быть преобразованы только целочисленные скалярные массивы
Несмотря на указание типа массива индекса arange как int
Есть идеи, где я иду не так?