[英]Check columns against each other in Pandas DataFrame
我有一些“信號”列和“響應”列的大型數據框:
In [1]: df
Out[1]:
response1 response2 signal1 signal2 signal3
2020-01-01 True False True True False
2020-01-02 True True False True False
2020-01-03 False True True False False
我想檢查每一對(響應,信號)並返回一個多索引數據幀:
In [2]: true_positive
Out[2]:
response1 response2
signal1 signal2 signal3 signal1 signal2 signal3
2020-01-01 True True False False False True
2020-01-02 False True False False True False
2020-01-03 False True True True False False
必須有一種需要循環的 map 方法嗎?
將 df 拆分為兩個后嘗試使用concat
r = df.filter(like = 'response')
s = df.filter(like = 'signal')
out = pd.concat([s.eq(r[x], axis=0)for x in r.columns], keys=r.columns, axis=1)
out
Out[229]:
response1 response2
signal1 signal2 signal3 signal1 signal2 signal3
2020-01-01 True True False False False True
2020-01-02 False True False False True False
2020-01-03 False True True True False False
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.