我創建了一個熊貓數據框,並希望根據某些布爾邏輯過濾數據。基本上,我想要做的更接近卓越的索引匹配功能,而不是簡單的過濾。我研究了很多其他線程。數據幀布爾邏輯索引匹配
當我應用我的過濾器時,數據框返回零真值。爲什麼當我的邏輯靈活時,返回零真值?和;
如果我介紹了第5列,說柱
'D'
,與random.randomint(100-1000,100)
,我會用什麼邏輯有條件地找到最大值僅爲D
列?即如果返回多個真值,我是否可以強制數據框僅從某個列返回最高的真值?
建議非常感謝。先謝謝你。
import pandas as pd
df = pd.DataFrame({
'Step': [1,1,1,1,1,1,2,2,2,2,2,2],
'A': [4,5,6,7,4,5,6,7,4,5,6,7],
'B': [10,20,30,40,10,20,30,40,10,20,30,40],
'C': [0,0.5,1,1.5,2,2.5,0,0.5,1,1.5,2.0,2.5]
})
columns = ['Step','A','B','C']
df=df[columns]
new_df=df[(df.Step == 1) & (df.A == 4|5|6|7) & (df.B == 10|20|30|40)]
new_df
你可以爲'2.'添加一些示例嗎?你需要一個最大的價值? – jezrael