Как заполнить значения na для нескольких столбцов в pandas


Функция pandas fillna() полезна для заполнения пропущенных значений в столбцах DataFrame pandas.

В этом руководстве представлено несколько примеров использования этой функции для заполнения пропущенных значений для нескольких столбцов в следующем DataFrame pandas:

 import pandas as pd
import numpy as np

#createDataFrame
df = pd. DataFrame ({'team': ['A', np. nan , 'B', 'B', 'B', 'C', 'C', 'C'],
                   'points': [25, np. no , 15, np. no , 19, 23, 25, 29],
                   'assists': [5, 7, 7, 9, 12, 9, np. no , 4],
                   'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print (df)

  team points assists rebounds
0 A 25.0 5.0 11
1 NaN NaN 7.0 8
2 B 15.0 7.0 10
3 B NaN 9.0 6
4 B 19.0 12.0 6
5 C 23.0 9.0 5
6 C 25.0 NaN 9
7 C 29.0 4.0 12

Пример 1: Заполните пропущенные значения всех столбцов

Следующий код показывает, как заполнить пропущенные значения нулем для всех столбцов в DataFrame:

 #replace all missing values with zero
df. fillna (value= 0 ,inplace= True )

#view DataFrame
print (df) 

  team points assists rebounds
0 A 25.0 5.0 11
1 0 0.0 7.0 8
2 B 15.0 7.0 10
3 B 0.0 9.0 6
4 B 19.0 12.0 6
5 C 23.0 9.0 5
6 C 25.0 0.0 9
7 C 29.0 4.0 12

Пример 2. Заполнение пропущенных значений для нескольких столбцов

Следующий код показывает, как заполнить пропущенные значения нулем только для точечных и вспомогательных столбцов DataFrame:

 #replace missing values in points and assists columns with zero
df[['points', 'assists']] = df[['points', 'assists']]. fillna (value= 0 )

#view DataFrame
print (df) 

  team points assists rebounds
0 A 25.0 5.0 11
1 NaN 0.0 7.0 8
2 B 15.0 7.0 10
3 B 0.0 9.0 6
4 B 19.0 12.0 6
5 C 23.0 9.0 5
6 C 25.0 0.0 9
7 C 29.0 4.0 12

Пример 3. Заполните пропущенные значения из нескольких столбцов разными значениями.

Следующий код показывает, как заполнить пропущенные значения в трех разных столбцах тремя разными значениями:

 #replace missing values in three columns with three different values
df. fillna ({'team': ' Unknown ', 'points': 0 , 'assists': ' zero '}, inplace= True )

#view DataFrame
print (df)

      team points assists rebounds
0 A 25.0 5 11
1 Unknown 0.0 7 8
2 B 15.0 7 10
3 B 0.0 9 6
4 B 19.0 12 6
5 C 23.0 9 5
6 C 25.0 zero 9
7 C 29.0 4 12

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *