1
我有形状(n, p)
的数据帧和一系列长度n
大熊猫最有效的方式来比较数据帧和一系列
我可以对它们进行比较:
for i in df.keys(): df[i] > ts
有没有办法做到它在一条线?像df > ts
。 如果是的话,效率更高吗?
我有形状(n, p)
的数据帧和一系列长度n
大熊猫最有效的方式来比较数据帧和一系列
我可以对它们进行比较:
for i in df.keys(): df[i] > ts
有没有办法做到它在一条线?像df > ts
。 如果是的话,效率更高吗?
我想你需要DataFrame.gt
:
print (df.gt(s, axis=0))
样品:
df = pd.DataFrame({'A':[1,2,3],
'B':[4,5,6],
'C':[7,8,9],
'D':[1,3,5],
'E':[5,3,6],
'F':[7,4,3]})
print (df)
A B C D E F
0 1 4 7 1 5 7
1 2 5 8 3 3 4
2 3 6 9 5 6 3
s = pd.Series([1,2,3])
print (s)
0 1
1 2
2 3
dtype: int64
print (df.gt(s, axis=0))
A B C D E F
0 False True True False True True
1 False True True True True True
2 False True True True True False
如果需要另一个函数比较:
这似乎不错。双重比较可能吗?像's
Donbeo
嗯,这是更复杂的,但认为这可以工作'print((df.gt(s,axis = 0))|(df.lt(s1,axis = 0)))'' – jezrael