Переименовать столбцы Dataframe на основе значений ячеек - PullRequest
1 голос
/ 23 сентября 2019

Мне нужно переименовать имена столбцов в кадре данных на основе объединения нескольких значений ячеек (строк), которые находятся в определенных индексных точках в кадре данных.

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

OverallA1Y.columns = ['Overall Research Rank', 'Weighed Comm Rank', 'Analyst Name', 'Firm', 
                      'Weighted Comm Score', 'Overall Research Score', 'Weighed Comm Firm Vote Count',
                     OverallA1Y.loc[5,7]+OverallA1Y.loc[6,7], 'Weigted Comm Vote Count', 
                      'Overall Research Firm Vote Count']

Я получаю сообщение об ошибке:

TypeError: cannot do label indexing on <class 'pandas.core.indexes.base.Index'> with these indexers [7] of <class 'int'>

Есть идеи, как объединить / объединить несколько строковых значений и соответственно переименовать столбец?

Спасибо

Ответы [ 2 ]

1 голос
/ 23 сентября 2019

Вы можете использовать DataFrame.iloc для выбора по позициям вместо loc:

OverallA1Y.iloc[5,7]+OverallA1Y.iloc[6,7]
1 голос
/ 23 сентября 2019
OverallA1Y.columns = ['Overall Research Rank', 'Weighed Comm Rank', 'Analyst Name',
                      'Firm', 'Weighted Comm Score', 'Overall Research Score',
                      'Weighed Comm Firm Vote Count',

                       str(OverallA1Y.iloc[ROW_INDEX_OF_CELL][COLUMN_NAME_OF_CELL])+
                       str(OverallA1Y.iloc[ROW_INDEX_OF_CELL][COLUMN_NAME_OF_CELL]),


                      'Weigted Comm Vote Count', 
                      'Overall Research Firm Vote Count']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...