Выберите строку по имени пользователя с Pandas - PullRequest
0 голосов
/ 08 декабря 2018

У меня есть таблица с несколькими пользователями и данными, принадлежащими им.enter image description here

Теперь я хочу создать отдельные таблицы для каждого пользователя следующим образом:

enter image description here

Каждыйучетная запись, принадлежащая пользователям, имеет другой идентификатор, поэтому я не могу использовать этот идентификатор для выбора.

Как выбрать все строки, принадлежащие одному конкретному имени, в строке «Пользователь», а затем создать отдельную таблицу?

Также я хотел бы вынуть данные из столбца и отсортировать их по двум новым столбцам.

Одним из примеров может быть что-то вроде электронного письма: John.tomson@email.com и разделение егона точке и создайте две новые колонки «Имя» и «Фамилия».enter image description here

1 Ответ

0 голосов
/ 08 декабря 2018

Разбивка на User

df.groupby('User').get_group('John')

   ID  User                  Email
0   1  John  john.tomson@email.com
1   2  John  john.tomson@email.com
2   3  John  john.tomson@email.com

Может также выполняться в цикле

grp = df.groupby('User')

for group in grp.groups:
    print(grp.get_group(group))

                   Email  ID   User
3  david.matty@email.com   4  David
4  david.matty@email.com   5  David
                   Email  ID  User
5  fred.brainy@email.com   6  Fred
                   Email  ID  User
0  john.tomson@email.com   1  John
1  john.tomson@email.com   2  John
2  john.tomson@email.com   3  John

Разделение столбца Email

email_df = df['Email'].str.split(r'(.+)\.(.+)@', expand=True)]
pd.concat([df, email_df], axis=1)

                   Email  ID   User      0       1          2
0  john.tomson@email.com   1   John   john  tomson  email.com
1  john.tomson@email.com   2   John   john  tomson  email.com
2  john.tomson@email.com   3   John   john  tomson  email.com
3  david.matty@email.com   4  David  david   matty  email.com
4  david.matty@email.com   5  David  david   matty  email.com
5  fred.brainy@email.com   6   Fred   fred  brainy  email.com
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...