Я пытаюсь создать пустой глобальный кадр данных pandas, а затем добавить его в функции обработки данных.У меня проблемы с выяснением, что происходит не так.Вот минимальный пример:
from datetime import datetime
import pandas as pd
def do_stuff_and_append_df():
dt = datetime.now()
row = dict.fromkeys(df.columns.tolist())
row['datetime'] = dt
row['pduType'] = 'blah'
df = df.append(row, ignore_index=True)
print(df.head())
def main():
# empty dataframe for appending
header = ['datetime', 'pduType']
global df
df = pd.DataFrame(columns=header)
# Main loop
try:
while True:
do_stuff_and_append_df()
except KeyboardInterrupt:
print('\nSaving and exiting.')
df.to_csv('data.csv')
main()
Я получаю ошибку UnboundLocalError: local variable 'df' referenced before assignment
.Кто-нибудь знает, почему я не могу вызвать df
в этой функции?