Python: заменить «NA» в столбце значением из соответствующего значения строки другого столбца (и наоборот) - PullRequest
0 голосов
/ 05 июня 2018

У меня есть следующий фрейм данных:

RawTimes_df =

                  ETime              XTime
0     2018-05-21 04:48:22  2018-05-21 05:52:45
1     2018-05-21 02:18:20  2018-05-21 03:19:53
2     2018-05-21 11:02:31  2018-05-21 12:17:57
3     2018-05-21 06:08:15  2018-05-21 07:08:12
4     NA                   2018-05-21 16:14:16
5     2018-05-21 03:38:12  2018-05-21 04:39:05
6     2018-05-21 17:43:06  2018-05-21 18:59:38
7     2018-05-21 08:52:32  NA
8     2018-05-21 02:27:44  2018-05-21 03:33:08
9     2018-05-21 12:01:12  NA
10    2018-05-21 10:21:10  2018-05-21 11:26:45
11    NA                   2018-05-21 21:27:38
12    2018-05-21 18:02:19  2018-05-21 19:07:31
13    2018-05-21 05:07:28  2018-05-21 06:07:51
14    NA                   2018-05-21 13:10:22
15    2018-05-21 11:05:19  2018-05-21 12:17:31
16    2018-05-21 02:27:08  2018-05-21 03:33:54
17    2018-05-21 02:12:01  2018-05-21 03:18:11
18    2018-05-21 11:07:23  2018-05-21 12:21:30
19    2018-05-21 12:31:53  NA
20    2018-05-21 06:19:52  NA

Я пытаюсь заменить записи "NA" соответствующим значением из другого столбца.Поэтому для строки 4 я хочу, чтобы ETime был таким же, как и соответствующая строка 4 XTime "2018-05-21 16:14:16", а затем строка 9 XTime будет "2018-05-21 12:01:12" и т. Д...

Требуемый вывод:

                  ETime              XTime
0     2018-05-21 04:48:22  2018-05-21 05:52:45
1     2018-05-21 02:18:20  2018-05-21 03:19:53
2     2018-05-21 11:02:31  2018-05-21 12:17:57
3     2018-05-21 06:08:15  2018-05-21 07:08:12
4     2018-05-21 16:14:16  2018-05-21 16:14:16
5     2018-05-21 03:38:12  2018-05-21 04:39:05
6     2018-05-21 17:43:06  2018-05-21 18:59:38
7     2018-05-21 08:52:32  2018-05-21 08:52:32  
8     2018-05-21 02:27:44  2018-05-21 03:33:08
9     2018-05-21 12:01:12  2018-05-21 12:01:12  
10    2018-05-21 10:21:10  2018-05-21 11:26:45
11    2018-05-21 21:27:38  2018-05-21 21:27:38
12    2018-05-21 18:02:19  2018-05-21 19:07:31
13    2018-05-21 05:07:28  2018-05-21 06:07:51
14    2018-05-21 13:10:22  2018-05-21 13:10:22
15    2018-05-21 11:05:19  2018-05-21 12:17:31
16    2018-05-21 02:27:08  2018-05-21 03:33:54
17    2018-05-21 02:12:01  2018-05-21 03:18:11
18    2018-05-21 11:07:23  2018-05-21 12:21:30
19    2018-05-21 12:31:53  2018-05-21 12:31:53
20    2018-05-21 06:19:52  2018-05-21 06:19:52

Я пытался написать функцию, чтобы попытаться заменить значение NA значением из другого столбца, но я пытаюсь заставить его работать для обоих столбцов.

1 Ответ

0 голосов
/ 05 июня 2018

Использование fillna

df.ETime.fillna(df.XTime,inplace=True)

df.XTime.fillna(df.ETime,inplace=True)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...