Деление на несколько столбцов панд Д.Ф. - PullRequest
0 голосов
/ 29 августа 2018

Я панд, и мне нужно сделать массовое деление между ~ 50 столбцами

 Age  Rosedale   Rosedale_y   Trinity  Trinity_y.....etc until 50 more columns   
 0    1          100
 1    3          106
 2    2          109
 3    3          108

Как разделить столбцы, такие как

  • Rosedale от Rosedale_y
  • Trinity by Trinity_y

Желаемая

Age   Rosedale_rate   Trinity_rate
0     0.01
1     0.03
2     0.02
3     0.03

1 Ответ

0 голосов
/ 29 августа 2018

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

df = df.set_index('Age')

i = df.filter(regex=r'_y$')
j = df[df.columns.difference(i.columns)]
i.columns = j.columns.str.split('_y').str[0]

df = j / i.reindex(j.columns, axis=1)

reindex - для дополнительной безопасности, обеспечивающей выравнивание обоих фреймов данных.

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