Pandas - конвертировать имя заголовка в формате кортежа в строку - PullRequest
0 голосов
/ 16 октября 2018

После вычисления процентилей внутри группы, имена заголовков имеют формат кортежа, такой как [('A', 0.5), ('A',0.9)...('Z',0.9)].

Желаемое значение должно быть:

['P50 A', 'P90 A', ...'P90 Z']

По сути, я хочу умножить десятичное числона 100, чтобы получить процент и переместить его вперед, добавьте букву 'P' в каждое поле.

Я чувствую, что должен использовать карту или присоединиться, как предложено здесь: Как изменить имя столбца скортеж в строку?

Но не знаете, как обращаться с деталями.

Ответы [ 2 ]

0 голосов
/ 16 октября 2018

Это также работает:

original_names = [('A', 0.5), ('A',0.9),('Z',0.9)]
new_names = ['P'+str(int(100*y)) + ' ' + x for x,y in original_names]

Результат: ['P50 A', 'P90 A', 'P90 Z']

0 голосов
/ 16 октября 2018

Текущие имена столбцов:

col_name = [('A', 0.5), ('A',0.9),('Z',0.9)]

Желаемые имена столбцов:

desired_col_named = [f'P{x[1]*100} {x[0]}' for x in col_name]

Предположим, у вас есть Python 3.6, поддерживающий f строк.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...