pandas: заполнить NaN в строках на основе других строк - PullRequest
0 голосов
/ 07 августа 2020

Допустим, у меня есть такой фрейм данных

index | col1 | col2 | col3 | col4 |
------|------|------|------|------|
123   | 'a'  | 'b'  | NaN  | 'c'  |
...
456   | 'a'  | 'b'  | 'd'  | 'e'  |

Я хочу заполнить значение в столбце 3 строки 123 значением из того же столбца в другой строке, совпадающей со значениями столбцов col1 и col2, так что конец результат:

index | col1 | col2 | col3 | col4 |
------|------|------|------|------|
123   | 'a'  | 'b'  | 'd'  | 'c'  |
...
456   | 'a'  | 'b'  | 'd'  | 'e'  |

Если имеется более одной строки с совпадающими столбцами col1 и col2, используйте любую, которая имеет не-NaN col3

Я могу сделать это с помощью .apply и функция, которая использует query, но работает медленно.

Есть ли другой способ?

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