Преобразуйте числа (значения индекса) в значения алфавита с помощью панд - PullRequest
0 голосов
/ 08 сентября 2018

Я хочу преобразовать идентификаторы кадра данных в алфавитный список на основе значения индекса.

Затем мне нужно применить это альфа-значение к другому фрейму данных с данными, которые будут перечислены.

поэтому вместо этих данных отображается идентификационный номер клиента:

2011-05-13  #483 ....
2011-05-13  #483 .... 
2011-05-13  #553 ....
2011-05-13  #555 ....

с этим индексом списка:

#483 - Client 1 
#551 - Client 2
#553 - Client 3
#554 - Client 4
#555 - Client 5

Итак, я хочу, чтобы вывод данных был примерно таким:

2011-05-13  #A  ....
2011-05-13  #A  ....
2011-05-13  #C  ....
2011-05-13  #D  ....

Индекс становится:

#A - Client 1 
#B - Client 2
#C - Client 3
#D - Client 4
#F - Client 5

Я использую Pandas, и это клиентский фрейм данных. Могу ли я создать альфа-список на основе индекса?

df_accts

    id   client        
0  483  Client 1    
1  551  Client 2     
2  553  Client 3   
3  554  Client 4     
4  555  Client 5     

В отчете будет от 1 до 15 клиентов, поэтому не нужно беспокоиться о таких вещах, как AA или BB.

Большое спасибо.

1 Ответ

0 голосов
/ 08 сентября 2018

Сначала создайте словарь, который сопоставляет клиентов с буквами:

import string
d = dict(zip(df_acts['client'].unique(), string.ascii_uppercase))

Затем замените клиентов соответствующими буквами здесь и на любом другом кадре данных:

df_acts['client'] = df_acts['client'].replace(d)
#    id client
#0  483      A
#1  551      B
#2  553      C
#3  554      D
#4  555      E
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...