Итерация по различным диапазонам в одном кадре данных в виде новых столбцов данных соответствующей длины - PullRequest
0 голосов
/ 16 апреля 2020

У меня есть фрейм данных df с 32 диапазонами значений y, которые собираются систематически.

Я определил индекс строки, определяющий размер шага каждого диапазона.

df2=pd.DataFrame(columns=['step_size','step_idx', 'start_idx', 'end_idx'])
df2['step_idx'] = df[df.iloc[:,0].str.contains("eV")].index+16
df2['step_size'] = pd.to_numeric(df.iloc[step_idx].reset_index()[0])
df2['start_idx'] = df2['step_idx'] + 5
df2['end_idx'] = df2['start_idx'] + df2['step_size']

enter image description here

Затем я пытаюсь добавить каждый диапазон в качестве нового столбца в кадре данных:

start = df2['start_idx']
end = df2['end_idx']

for i,j,k in zip(start,end,DF.columns):
    DF[k] = df.iloc[i:j][::2].reset_index(drop=True)

enter image description here

Однако, как вы могли заметить, не все столбцы имеют одинаковый ~step_sizes/2 = 251 rows. Как добавить различные диапазоны фрейма данных df в DF с различной длиной столбца?

...