2
我有一個數據框,其中有多個列,其中索引是一個時間戳,其他三個是階段號指示符,其餘的只是數據。我試圖做的是找到三個指標列在同一個階段類型中,其中包含一個數字列表。在熊貓數據框中查找索引值,其中列是相同的
So my data frame looks like this:
Index PhaseA PhaseB PhaseC DataCol
01/07/2013 00:00:00 400 415 425 1.2
01/07/2013 00:01:00 415 420 410 1.2
01/07/2013 00:02:00 415 423 415 1.2
01/07/2013 00:03:00 415 423 420 1.2
01/07/2013 00:04:00 415 423 423 1.2
01/07/2013 00:05:00 415 423 425 1.2
因此,在這種情況下,簡單的我正在尋找在全部三個階段號是415,423,427和432的值。這意味着,我想在這種情況下獲得行是2分鐘一和4分鐘之一。
我最好在尋找這個已經發生的日期和時間,然後我可以使用其他數據列進一步調查它。另外,這不太可能是我必須這樣做的時候,所以能夠改變我感興趣的數字和列將是很好的。
到目前爲止,我設法得到它與類似的代碼工作:
df[ (df["PhaseA"] == (415))]
and then for multiple ones:
df[(df["PhaseA"] == (415))|(df["PhaseA"] == (420))]
但是,這是會得到非常混亂迅速,將是難以修改以後。
任何幫助將不勝感激,因爲我相對較新的python和編程一般。
感謝@unutbu的回覆。這看起來像它會做我想要的,但我得到一個錯誤,因爲DataFrame顯然沒有名爲isin的屬性。這是因爲我在0.12熊貓身上,因爲看起來我相信DataFrames尚未發佈。有沒有辦法做到這一點沒有isin? – Alarr
你是對的!對於那個很抱歉。我已經添加了上面的代碼來顯示如何在不使用isin的情況下定義'mask'。 – unutbu