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