Pandas Pivot: как заполнить значения NaN в DataFrame

Чтобы повернуть DataFrame Pandas и заполнить недостающие значения (NaN), вы можете использовать несколько методов. Вот несколько примеров:

Метод 1: использование pivot_table()с параметром fill_value

import pandas as pd
# Create a sample DataFrame
df = pd.DataFrame({
    'Name': ['Alice', 'Bob', 'Charlie', 'Alice', 'Bob', 'Charlie'],
    'Category': ['A', 'B', 'A', 'B', 'A', 'B'],
    'Value': [10, 20, 30, 40, 50, 60]
})
# Pivot the DataFrame and fill NaN with a specific value (e.g., 0)
pivot_df = df.pivot_table(index='Name', columns='Category', values='Value', fill_value=0)
print(pivot_df)

Метод 2: использование pivot()с методом fillna()

import pandas as pd
# Create a sample DataFrame
df = pd.DataFrame({
    'Name': ['Alice', 'Bob', 'Charlie', 'Alice', 'Bob', 'Charlie'],
    'Category': ['A', 'B', 'A', 'B', 'A', 'B'],
    'Value': [10, 20, 30, 40, 50, 60]
})
# Pivot the DataFrame and fill NaN with a specific value (e.g., 0)
pivot_df = df.pivot(index='Name', columns='Category', values='Value').fillna(0)
print(pivot_df)

Метод 3: использование pivot_table()с параметром aggfunc

import pandas as pd
# Create a sample DataFrame
df = pd.DataFrame({
    'Name': ['Alice', 'Bob', 'Charlie', 'Alice', 'Bob', 'Charlie'],
    'Category': ['A', 'B', 'A', 'B', 'A', 'B'],
    'Value': [10, 20, 30, 40, 50, 60]
})
# Pivot the DataFrame and fill NaN by aggregating values (e.g., using mean)
pivot_df = df.pivot_table(index='Name', columns='Category', values='Value', aggfunc='mean')
print(pivot_df)

В этих примерах мы сначала создаем образец DataFrame со столбцами «Имя», «Категория» и «Значение». Затем мы поворачиваем DataFrame, используя разные методы, и заполняем пропущенные значения (NaN) конкретным значением (например, 0) или путем агрегирования значений (например, используя среднее значение).