建立具有連續行的 Pandas Dataframe
在資料分析任務中,經常需要建立 Pandas DataFrame 並迭代添加行到它。為了實現這一點,有多種方法可用,每種方法都有自己的優點。
一種方法是使用帶有 columns 參數的 pd.DataFrame() 建構子來指定所需的欄位名稱。建立一個空的 DataFrame,然後可以使用 _set_value() 方法逐一新增一行以設定各個欄位值。但是,如果需要為每行同時添加多個字段,則此方法效率較低。
更有效的解決方案是使用 df.loc[i] 語法,其中 i 表示行索引。將值清單指派給 df.loc[i],可以一步填入索引 i 處的整行。對於大型資料集,此方法要快得多,因為它避免了多次 _set_value() 呼叫。
要示範此方法,請考慮以下程式碼片段:
import numpy as np import pandas as pd df = pd.DataFrame(columns=['lib', 'qty1', 'qty2']) for i in range(5): df.loc[i] = ['name' + str(i)] + list(np.random.randint(10, size=2)) print(df)
此程式碼建立一個包含三列的空 DataFrame:「lib」、「qty1」和「qty2」。然後,它產生五行數據,「名稱」後面跟著其餘列中的兩個隨機產生的整數值。結果是一個具有指定結構和資料的 DataFrame:
lib qty1 qty2 0 name0 3 3 1 name1 2 4 2 name2 2 8 3 name3 2 1 4 name4 9 6
以上是如何有效地建立具有連續行的 Pandas DataFrame?的詳細內容。更多資訊請關注PHP中文網其他相關文章!