高效地將多行追加到Pandas DataFrame
處理資料時,經常會遇到需要增量追加行的情況現有的DataFrame。雖然使用 df._set_value() 一次設定一個欄位的值的方法是可行的,但添加多行的效率可能很低。
使用 df.loc[i] 進行高效行添加
添加多行的更好、更簡潔的方法是使用 df.loc[i]。它的工作原理如下:
導入必要的庫:
import pandas as pd from numpy.random import randint
使用所需的列建立一個空的DataFrame:
df = pd.DataFrame(columns=['lib', 'qty1', 'qty2'])
迭代您想要的行數想要加:
for i in range(5):
在循環內,使用df.loc[i] 存取索引為i 的行,並為lib、qty1 和qty2 指派所需的值列。例如:
df.loc[i] = ['name' + str(i)] + list(randint(10, size=2))
範例:
這是一個完整的範例,示範如何使用 df.loc[i]追加五行給我們的DataFrame:
import pandas as pd from numpy.random import randint df = pd.DataFrame(columns=['lib', 'qty1', 'qty2']) for i in range(5): df.loc[i] = ['name' + str(i)] + list(randint(10, size=2)) print(df)
輸出:
lib qty1 qty2 0 name0 3 3 1 name1 2 4 2 name2 2 8 3 name3 2 1 4 name4 9 6
使用df.loc[i] 提供了一個方便高效的方法來一次在DataFrame 中新增多行,無需多次呼叫df._set_value().
以上是如何有效地將多行附加到 Pandas DataFrame?的詳細內容。更多資訊請關注PHP中文網其他相關文章!