簡體   English   中英

基於行條件在 Pandas 數據框中刪除列

[英]Drop Column in Pandas Dataframe based on Row Conidtion

我有以下熊貓數據框,我想刪除“貿易”行中任何具有 0-Flat 的列。 我該怎么做呢?

在此處輸入圖像描述

這應該做的工作

headers_to_drop=[header for header in df.columns if (df[header]=="0-Flat").any()]
df=df.drop(headers_to_drop,axis=1)

代碼首先遍歷所有列並檢查是否有包含字符串的列並刪除選定的列。

您可以在dropna()旁邊使用replace來查看整個 df 並刪除包含 0-Flat 字符串的所有列

import numpy as np
import pandas as pd

df = pd.DataFrame({
    'Column1' : ['1', '2', '3', '0-Flat'],
    'Column2' : ['1', '2', '3', '4'],
    'Column3' : ['1', '2', '0-Flat', '0']
})

df.replace('0-Flat', np.nan).dropna(axis = 1)

暫無
暫無

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

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