Объединить столбцы с одинаковыми именами в одном и том же фрейме - PullRequest
0 голосов
/ 02 октября 2019

У меня есть фрейм данных, который выглядит следующим образом

    Depth   DT  DT  DT  GR  GR  GR

1   100    NaN  45  NaN 100 50  NaN

2   200    NaN  45  NaN 100 50  NaN

3   300    NaN  45  NaN 100 50  NaN

4   400    NaN  Nan 50  100 50  NaN

5   500    NaN  Nan 50  100 50  NaN

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

Depth   DT  GR

1   100 45  100

2   200 45  100

3   300 45  100

4   400 50  100

5   500 50  100

Я новичок в пандах. Я пытался, но безуспешно. Я пытался бросить дубликат, но он не мог сделать то, что я хотел. Есть предложения?

1 Ответ

0 голосов
/ 02 октября 2019

IIUC, вы можете сделать:

(df.set_index('Depth')
   .groupby(level=0, axis=1).first()
   .reset_index())

вывод:

   Depth    DT     GR
0    100  45.0  100.0
1    200  45.0  100.0
2    300  45.0  100.0
3    400  50.0  100.0
4    500  50.0  100.0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...