我在 Pyspark 中有審計日志數據,我試圖弄清楚在任何給定時間有多少人登錄到系統。因此,例如我正在工作的數據框具有以下結構time src_comp auth_orient1 C1 LogOn2 C1 LogOn2 C1 LogOn3 C2 LogOn3 C1 LogOff4 C1 LogOn4 C2 LogOff5 C1 LogOn6 C2 LogOn6 C3 LogOff然后從我的代碼中,我想創建另一個列來顯示有多少人登錄,如下所示。我也不希望登錄列變成負數,所以如果有人退出我沒有跟蹤的系統,我不想減少列:預期輸出:time src_comp LoggedOn1 C1 12 C1 23 C2 13 C1 13 C1 24 C2 05 C1 36 C2 16 C3 0我嘗試了以下代碼但出現錯誤。auth_dataset.groupby(auth_dataset.time,auth_dataset.src_comp).agg(F.when(auth_dataset.strt=='LogOn',number+=1).otherwise(number-=1))
添加回答
舉報
0/150
提交
取消