在列中的值中搜索特定字符后,如何在python中仅打印datframe中的特定列

在列中的值中搜索特定字符后,如何在python中仅打印datframe中的特定列,python,pandas,dataframe,data-analysis,Python,Pandas,Dataframe,Data Analysis,数据帧df示例: Date msft_close msft_high signal 01-01-20 350 358 buy 02-01-20 370 377 sell 03-01-20 365 370 NaN 04-01-20 368 371 buy 印刷品: Date msft_close msft_high signal

数据帧df示例:

Date      msft_close msft_high  signal
01-01-20    350         358      buy
02-01-20    370         377      sell
03-01-20    365         370      NaN
04-01-20    368         371      buy
印刷品:

    Date      msft_close msft_high  signal
    01-01-20    350         358      buy
    04-01-20    368         371      buy
但我只想关闭msft_列。如何选择仅在检查信号列是否已购买后才打印msft_close? 我的目标输出是:

    Date      msft_close 
    01-01-20    350      
    04-01-20    368      

改用这段代码-

df[df[“signal”].astype(str).str.contains(“buy”)][“msft_close”]
返回过滤器后的
msft\u close

注:我假设
Date
列是索引

df.loc[df.signal.eq(“买入”),['Date','msft\u close']]
    Date      msft_close 
    01-01-20    350      
    04-01-20    368