将 Dataframe 值添加到新的 DataFrame

Add Dataframe values to new DataFrame

我目前正在尝试将我的 DataFrame forecast_array 中的值附加到 DataFrame df_temp。我没有收到任何错误消息,但是当我尝试打印出 df_temp 时,它是空的...
我的代码:

import pandas as pd
...

def forecast(forecast_array):
    df_temp = pd.DataFrame(columns=['Article Nr', 'Brand','Date', 'Sales base line', 'Sales upper boundaries', 'Sales lower boundaries', 'Simple Prediction of order date', 'Order Value', 'Note'])
    df_temp.append(forecast_array.iloc[0], ignore_index= True)
    print(df_temp)
    return df_temp

forecast_array DataFrame 具有以下结构:

                  Date  Sales base line  ... open Orders Reservations
2022-09-30  01.10.2022       979.997823  ...           0            0

正如信息一样:...中的列与 df_temp DataFrame 中的列相同,唯一不在 forecast_array 中的两列是 ArticleNrBrand。 我也尝试在没有 .iloc[0] 的情况下附加数据,但它也不起作用。 感谢您的帮助!

您必须重新分配 df_temp: append return 一个副本,它不适用于原地更改:

更改您的代码:

    df_temp = df_temp.append(forecast_array.iloc[0], ignore_index= True)
    return df_temp

或者

    return df_temp.append(forecast_array.iloc[0], ignore_index= True)

´df.append´ 不是就地操作,returns 是一个新的 DataFrame。因此,您必须将 df temp 重新分配给附加的 df_temp:

df_temp = df_temp.append(forecast_array.iloc[0], ignore_index= True)