Python, как записать в txt датафрейм построчно (перезапись юзерлога)?

Пишу код для обработки юзерологов, он будет открывать папку, пробегаться по файлам юзерлогов, группировать данные по названию учетки и подсчитывать результат. Хочу, чтобы текущий файл сразу перезаписывался из исходного в вида в рейтинг пользователей по посещениям. Проблема в том, что файл перезаписывается и становится пустым. Были попытки сделать в цикле, через writelines, через pikle, savetxt и вот такой вариант ниже. Что я делаю не так?

Вот мой код:

def usr_eater(directory):
    df = pd.read_csv(
    directory, 
    delimiter=' ', 
    names=['1', '2', '3', '4', '5', '6', '7', '8'],
    encoding_errors='ignore',
    encoding='cp1251'
    )
    df_grouped = df[df['3']=="Зашел"].groupby(['1', '2'])['3'].count().sort_values(ascending=False)\
    .reset_index()
    return df_grouped ```

for f in Path(r"C:\userlog").glob("*.txt"):
    file = open(f, "w")
    a = usr_eater(f)
    for column in a.columns:
        lista = a[column].tolist()
        for i in lista:
            f = file.write("%s\n" % i)
    file.close()

Ответы (0 шт):