What is the python equivalent of this in operator? I am trying to filter down a pandas database by having rows only remain if a column in the row has a value found in my list.
I tried using any() and am having immense difficulty with this.
What is the python equivalent of this in operator? I am trying to filter down a pandas database by having rows only remain if a column in the row has a value found in my list.
I tried using any() and am having immense difficulty with this.
Pandas comparison with R docs are here.
s <- 0:4 s %in% c(2,4) The isin method is similar to R %in% operator:
In [13]: s = pd.Series(np.arange(5),dtype=np.float32) In [14]: s.isin([2, 4]) Out[14]: 0 False 1 False 2 True 3 False 4 True dtype: bool If you want to use only numpy without panads (like a use case I had) then you can:
import numpy as np x = np.array([1, 2, 3, 10]) y = np.array([10, 11, 2]) np.isin(y, x) This is equivalent to:
c(10, 11, 2) %in% c(1, 2, 3, 10) Note that the last line will work only for numpy >= 1.13.0, for older versions you'll need to use np.in1d.
As others indicate, in operator of base Python works well.
myList = ["a00", "b000", "c0"] "a00" in myList # True "a" in myList # False %in% in calling semantics. E.g. ["a00", "node", "c0"] in myList isn't what someone used to %in% is going to expect.