У меня большой набор данных, в котором я пытаюсь отфильтровать только те строки, которые соответствуют определенным критериям.В частности, я хочу получить все строки, где Type == A if Type == B is 2
Так что в следующем примере это приведет к строке 2 Node-1 A 1
>>> import pandas as pd
>>> data = [['Node-0', 'A', 1],['Node-0', 'B', 1],['Node-1','A', 1],['Node-1', 'B', 2]]
>>> df = pd.DataFrame(data,columns=['Node','Type','Value'])
>>> print df
Node Type Value
0 Node-0 A 1
1 Node-0 B 1
2 Node-1 A 1
3 Node-1 B 2
Я могу отфильтровать строки, используя df.loc[df['Type'] == 'A']
, но это дает мне строки 0
и 2
.