簡體   English   中英

如何檢索具有最大值和最小值為零的列名並將其從 dataframe 中刪除?

[英]How to retrieve column names that has max and min value Zero and drop it the drop from the dataframe?

假設我們 dataframe 的數據名為 df:-

   Name     Scores     Project_score    Attendence
1  Kahn      25             0               0
2  Uri       22             0               0
3  John      24             0               0
4  Shushi    21             0               0
5  Johnny    25             0               0

我想從數據中刪除最大值和最小值為零的列。 注意:- 這只是一個示例數據,數據中有 100 多列,因此我們不能使用下面的代碼一一選擇所有列

df.drop(['Attendence','Project_score'])

我需要一個循環語句或任何 function 至少可以檢索到最小值和最大值為零的列的名稱。

最大值和最小值等於零意味着一列全為零,您需要找到值不為零的列。

對於錯誤標記 dtypes 或 float 值的情況,更通用的解決方案是將適用的列(無論是 string 還是 float)轉換為 int dtype。 但是,對於像 '0.0' 這樣的情況,我們首先需要將兼容的列轉換為浮點數,然后將浮點數轉換為整數,以便以下解決方案適用:

df = df.astype(float, errors='ignore').astype(int, errors='ignore')
df[df.columns[(df != 0).any()]]

暫無
暫無

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

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