сохранить весь dataframe в Excel, а не только последний ряд - PullRequest
0 голосов
/ 21 апреля 2020

У меня есть набор данных, который включает одну обработку (группа A, B, C) и I l oop функция для каждой группы. Затем я хочу сохранить выходные данные этого l oop в новый набор данных, который я называю здесь NewList. Однако, когда я открываю файл Excel, я получаю только последний столбец нового фрейма данных. Если я распечатываю новый фрейм данных в python, я вижу все строки. Новый кадр данных должен иметь ay (s_1) для каждой группы в лечении (i). Я не понимаю, что я делаю неправильно, когда я сохраняю файл в excel. Заранее спасибо!

    import as np
    import pandas as pd
    from pandas import ExcelWriter
    from pandas import ExcelFile

    # old dataframe
    df = {'treatment': ['A', 'A', 'A', 'B', 'B', 'B'],
       ..}

    ###### function
    def derivative (t):
        slope =(-fit_B*fit_n*np.exp(-fit_n*t)) - (k*fit_m*np.exp(-fit_m*t))
    return slope

     ###### loop function in dataset based on treatment
    for i, g in df.groupby('treatment'):
        y = derivative(t=10)
        s_1 = pd.DataFrame([y])

###### new data frame
       new_row = {'treatment': i, 'y': s_1.iloc[0, 0]}
       new_dataframe = pd.DataFrame(new_row, index=[0]) 
       #I tried to set the index = i, but it did not help. 
       NewList = new_dataframe.append(new_row, ignore_index=True)

### why do I get only the last line of the loop in the excel file? I am respecting the loop structure
       writer = ExcelWriter('filename.xlsx')
       NewList.to_excel(writer, 'Sheet1', index=False)
       writer.save() ```






Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...