簡體   English   中英

通過 Pandas DataFrame 中的龐大數據集“向后迭代”

[英]'Iterating backwards' through a huge dataset in Pandas DataFrame

我知道,在 Pandas 中迭代是不“可接受的”,並且有很多更有效的方法可以做到這一點,但為了更好地理解,讓我們堅持迭代。

我有一個巨大的 NetFlow 數據庫,(它包含時間戳、源 ip、目標 ip、協議、源和目標 prot 以及更多屬性)。 我想根據前幾行創建自定義屬性。

基本上,我想在整個 DataFrame 中“迭代”,對於每一行,我想獲取源 IP,然后向后“迭代”一小時。 在那個小時內,我想獲取與所選源 IP 匹配的所有行,並且只有這些行,我想根據每個源 IP 的最后一小時前一次出現的最后兩個屬性計算一個新屬性。

數據集中的一行

您可以在不“迭代”的情況下做到這一點,您可以將 lambda 函數應用於數據幀,並僅使用索引來執行“向后”邏輯。 使用迭代你不會得到任何理解,你可以理解你用 df.apply() 做得更好

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM