我有兩個 df 框架
df = pd.DataFrame({'1': [0, 0, 0, 0, 0, 0],
'2': [0, 0, 0, 0, 0, 0],
'3': [0, 10, 20, 30, 40, 50]})
df2 = pd.DataFrame({'1': [53, 76, 77, 96, 58, 64],
'2': [42, 61, 65, 74, 45, 54],
'3': [36, 42, 24, 54, 10, 80],})
我正在尋找的是一個新列,df其中說明了該行有多少次來自 df2 的值在一行中 >= 到每個數字。

希望我已經解釋得很好謝謝
uj5u.com熱心網友回復:
嘗試apply:
df["count"] = df.apply(lambda row: row.le(df2).all(1).sum(), axis=1)
>>> df
1 2 3 count
0 0 0 0 6
1 0 0 10 6
2 0 0 20 5
3 0 0 30 4
4 0 0 40 3
5 0 0 50 2
uj5u.com熱心網友回復:
嘗試outer sub
df['count'] = (np.subtract.outer(df2.to_numpy(),df.to_numpy())>=0).all((1,-1)).sum(0)
df
Out[307]:
1 2 3 count
0 0 0 0 6
1 0 0 10 6
2 0 0 20 5
3 0 0 30 4
4 0 0 40 3
5 0 0 50 2
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/464384.html
上一篇:如何擺脫Pandas的例外?
