如果 'value' 在列表 pandas Python 中,则获取列名称
Get columns names if 'value' is in a list pandas Python
我需要查找列名称,如果它们包含以下单词之一 COMPLETE
、UPDATED
和 PARTIAL
这是我的代码,无法正常工作。
import pandas as pd
df=pd.DataFrame({'col1': ['', 'COMPLETE',''],
'col2': ['UPDATED', '',''],
'col3': ['','PARTIAL','']},
)
print(df)
items=["COMPLETE", "UPDATED", "PARTIAL"]
if x in items:
print (df.columns)
这是期望的输出:
我试图从这个问题中得到启发Get column name where value is something in pandas dataframe,但我无法理解它
IIUC 我们做 isin
和 stack
和 where
s=df.where(df.isin(items)).stack().reset_index(level=0,drop=True).sort_index()
s
col1 COMPLETE
col2 UPDATED
col3 PARTIAL
dtype: object
这是一种方法。
# check each column for any matches from the items list.
matched = df.isin(items).any(axis=0)
# produce a list of column labels with a match.
matches = list(df.columns[matched])
我需要查找列名称,如果它们包含以下单词之一 COMPLETE
、UPDATED
和 PARTIAL
这是我的代码,无法正常工作。
import pandas as pd
df=pd.DataFrame({'col1': ['', 'COMPLETE',''],
'col2': ['UPDATED', '',''],
'col3': ['','PARTIAL','']},
)
print(df)
items=["COMPLETE", "UPDATED", "PARTIAL"]
if x in items:
print (df.columns)
这是期望的输出:
我试图从这个问题中得到启发Get column name where value is something in pandas dataframe,但我无法理解它
IIUC 我们做 isin
和 stack
和 where
s=df.where(df.isin(items)).stack().reset_index(level=0,drop=True).sort_index()
s
col1 COMPLETE
col2 UPDATED
col3 PARTIAL
dtype: object
这是一种方法。
# check each column for any matches from the items list.
matched = df.isin(items).any(axis=0)
# produce a list of column labels with a match.
matches = list(df.columns[matched])