首頁 > 後端開發 > Python教學 > 為什麼 Pandas 會拋出「'DataFrame'物件沒有屬性'append'」錯誤?

為什麼 Pandas 會拋出「'DataFrame'物件沒有屬性'append'」錯誤?

Barbara Streisand
發布: 2024-12-02 15:40:10
原創
559 人瀏覽過

Why Does Pandas Throw a

錯誤:「DataFrame」物件沒有屬性「Append」

問題描述:

嘗試附加時字典到Data物件時,遇到錯誤「'DataFrame'物件沒有屬性'append'」。儘管期望 DataFrame 有一個“append”方法,但錯誤仍然存在。

程式碼範例:

df = pd.DataFrame(df).append(new_row, ignore_index=True)
登入後複製

錯誤背後的原因:

從pandas 2.0 版本開始,append 方法已被刪除。對於大多數用例,它已被 concat 方法取代。

使用Concat 的替代方法:

df = pd.concat([df, pd.DataFrame([new_row])], ignore_index=True)
登入後複製

使用Loc 的替代方法(僅RangeIndex):

如果DataFrame 的索引是RangeIndex,可以使用loc方法。

df.loc[len(df)] = new_row
登入後複製

為什麼Append被移除:

append的移除是由於new頻繁誤用該方法而提示的熊貓使用者。與Python清單中的append方法不同,pandas的append不會修改現有的DataFrame;

重複插入的最佳實踐:

如果需要多次插入,應該收集它們放在列表中並在最後轉換為DataFrame,然後可以與原始DataFrame 連接:

lst = []

for new_row in items_generation_logic:
    lst.append(new_row)

# create extension
df_extended = pd.DataFrame(lst, columns=['A', 'B', 'C'])

# concatenate to original
out = pd.concat([df, df_extended])
登入後複製

以上是為什麼 Pandas 會拋出「'DataFrame'物件沒有屬性'append'」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板