Pandas: як заповнити значення nan значеннями з іншого стовпця


Ви можете використовувати такий синтаксис, щоб замінити значення NaN в одному стовпці pandas DataFrame значеннями в іншому стовпці:

 df[' col1 '] = df[' col1 ']. fillna (df[' col2 '])

Цей конкретний синтаксис замінить усі значення NaN у стовпці 1 на відповідні значення у стовпці 2 .

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: замініть відсутні значення іншим стовпцем

Припустімо, що у нас є наступний pandas DataFrame з декількома відсутніми значеннями:

 import numpy as np
import pandas as pd

#create DataFrame with some NaN values
df = pd. DataFrame ({' team1 ': ['Mavs', np.nan, 'Nets', 'Hawks', np.nan, 'Jazz'],
                   ' team2 ': ['Spurs', 'Lakers', 'Kings', 'Celtics', 'Heat', 'Magic']})

#view DataFrame
df

        team1 team2
0 Mavs Spurs
1 NaN Lakers
2 Nets Kings
3 Hawks Celtics
4 NaN Heat
5 Jazz Magic

Зверніть увагу, що в стовпці team1 є два значення NaN.

Ми можемо використовувати функцію fillna() , щоб заповнити значення NaN у стовпці team1 відповідним значенням у стовпці team2 :

 #fill NaNs in team1 column with corresponding values in team2 column
df[' team1 '] = df[' team1 ']. fillna (df[' team2 '])

#view updated DataFrame
df

        team1 team2
0 Mavs Spurs
1 Lakers Lakers
2 Nets Kings
3 Hawks Celtics
4 Heat Heat
5 Jazz Magic

Зверніть увагу, що два значення NaN у стовпці team1 були замінені на відповідні значення в стовпці team2 .

Примітка : Ви можете знайти повну онлайн-документацію для функції fillna() тут .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові операції в pandas:

Як порахувати пропущені значення в пандах
Як видалити рядки зі значеннями NaN в Pandas
Як видалити рядки, що містять певне значення в Pandas

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *