[英]How to select all rows which contain values *in selected columns* greater than a threshold?
我正在嘗試做與這個問題相同的事情,但我有一個字符串類型的列,我需要將其保留在 dataframe 中,以便我可以識別哪些行是哪些行。 (我想我可以通過索引來做到這一點,但我希望能夠節省一步。)有沒有辦法在使用.any()時不計算列,但將其保留在生成的 dataframe 中? 謝謝!
這是所有列上的代碼:
df[(df > threshold).any(axis=1)]
這是我現在正在使用的硬編碼版本:
df[(df[list_of__selected_columns] > 3).any(axis=1)]
這對我來說似乎有點笨拙,所以我想知道是否有更好的方法。
您可以使用.select_dtype
來選擇所有,比如數字列:
df[df.select_dtype(include='number').gt(threshold).any(axis=1)]
或一大塊帶有iloc
的連續列:
df[df.iloc[:,3:6].gt(threshold).any(axis=1)]
如果你想 select 一些隨機的列列表,你最好通過硬編碼列表來解決。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.