Got a DataFrame like this:
pd.DataFrame({"type":["type1","type1","type1","type2","type2","type2","type1/type2","type1/type2","type1/type2"],
"id": [1,2,3,1,2,3,1,2,3],
"values":[1,np.nan,7,np.nan,5,np.nan,1,1,1]})
:
| type | id | values |
|---|---|---|
| type1 | 1 | 1 |
| type1 | 2 | NaN |
| type1 | 3 | 7 |
| type2 | 1 | NaN |
| type2 | 2 | 5 |
| type2 | 3 | NaN |
| type1,type2 | 1 | 1 |
| type1,type2 | 2 | 1 |
| type1,type2 | 3 | 1 |
And I have a "guide" like this (types with ids they corresponds to):
type1 = [1,3]
type2 = [2,3]
type1,type2 = [1,2,3]
I'd like to filter rows based on this lists (you can see that there're two cases possible: type1-id2 = NaN need to be filtered, but type2-id3=NaN - is a valid value)
How could i perform this operation in a best way? I have much bigger table and more guide lists in fact.