У вас есть много способов сделать это.
Создать пустой фрейм данных:
cnames=['Security', 'Time', 'Vol_21D', 'Vol2_21D', 'MaxAPV_21D', 'MinAPV_21D']
df = pd.DataFrame(columns=cnames)
Вывод:
Empty DataFrame
Columns: [Security, Time, Vol_21D, Vol2_21D, MaxAPV_21D, MinAPV_21D]
Index: []
Затем в цикле вы можете создать pd.series и добавить к вашему фрейму данных, например:
df.append(pd.Series([1, 2, 3, 4, 5, 6], cnames), ignore_index=True)
Или вы можете добавить dict:
df.append({'Security': 1,
'Time': 2,
'Vol_21D': 3,
'Vol2_21D': 4,
'MaxAPV_21D': 5,
'MinAPV_21D': 6
}, ignore_index=True)
Это будет тот же вывод:
Security Time Vol_21D Vol2_21D MaxAPV_21D MinAPV_21D
0 1 2 3 4 5 6
Но я думаю, более быстрый и питонический способ: сначала создайте массив, затем добавьте все необработанные строки в массив и сделайте фрейм данных из массива.
data = []
for i in range(0,5):
data.append([1,2,3,4,i,6])
df = pd.DataFrame(data, columns=cnames)
Надеюсь, это поможет.