Пусть ваш DataFrame будет выглядеть так
df = pd.DataFrame([['Tim', 1, 2],
['Tim', 0, 2],
['Claes', 1, 3],
['Claes', 0, 1],
['Emma', 1, 1],
['Emma', 1, 2]], columns=['Person', 'ExpNum', 'Data'])
давая
>>> df
Person ExpNum Data
0 Tim 1 2
1 Tim 0 2
2 Claes 1 3
3 Claes 0 1
4 Emma 1 1
5 Emma 1 2
Затем вы получите групповые кадры данных непосредственно из объекта pandas groupby
grouped_persons = df.groupby('Person')
от
>>> grouped_persons.get_group('Emma')
Person ExpNum Data
4 Emma 1 1
5 Emma 1 2
и хранить их отдельно не нужно.
Примечание. Используемая версия Pandas была '0.23.1'
, но эта функция может быть доступна и в некоторых более ранних версиях.
Изменить: Если вас интересуют эти записи только с ExpNum == 1
, я предлагаю применить это перед групповой, например,
grouped_persons_1 = df[df['ExpNum'] == 1].groupby('Person')