Як змістити стовпець у pandas: із прикладами


Ви можете використовувати функцію shift() , щоб перемістити значення вгору або вниз у стовпці в pandas DataFrame:

 #shift values down by 1
df[' column1 '] = df[' column1 ']. shift (1)

#shift values up by 1
df[' column1 '] = df[' column1 ']. shift (-1)

Наступні приклади показують, як використовувати цю функцію на практиці з такими pandas DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' product ': ['A', 'B', 'C', 'D', 'E', 'F'],
                   ' sales ': [4, 7, 8, 12, 15, 19]})

#view DataFrame
df

        product sales
0 to 4
1 B 7
2 C 8
3 D 12
4 E 15
5 F 19

Приклад 1: переміщення стовпця вгору або вниз

У наступному коді показано, як зсунути всі значення в стовпці “продукт” на 1 вниз:

 #shift all 'product' values down by 1
df[' product '] = df[' product ']. shift (1)

#view updated DataFrame
df

	product sales
0 NaN 4
1 to 7
2 B 8
3 C 12
4 D 15
5 E 19

Зверніть увагу, що кожне значення в стовпці «product» було зміщено на 1, а перше значення в стовпці було змінено на NaN.

Також зауважте, що останнє значення в стовпці Product (“F”) було повністю видалено з DataFrame.

Щоб зберегти значення «F» у DataFrame, нам спочатку потрібно додати порожній рядок у нижній частині DataFrame, а потім виконати зсув:

 import numpy as np

#add empty row to bottom of DataFrame
df. loc [len(df. index )] = [np. nah , np. no ]

#shift all 'product' values down by 1
df[' product '] = df[' product ']. shift (1)

#view updated DataFrame
df

	product sales
0 NaN 4.0
1 to 7.0
2B 8.0
3C 12.0
4 D 15.0
5 E 19.0
6 F NaN

Зверніть увагу, що значення «F» зберігається як останнє значення в стовпці «product».

Приклад 2: переміщення кількох стовпців угору або вниз

Наступний код показує, як зсунути всі значення в стовпцях “продукт” і “продаж” на 2 вгору:

 #shift all 'product' and 'sales' values up by 2
df[[' product ', ' sales ']] = df[[' product ', ' sales ']]. shift (-2)

#view updated DataFrame
df

        product sales
0 C 8.0
1 D 12.0
2 E 15.0
3 F 19.0
4 NaN NaN
5 NaN NaN

Зверніть увагу, що кожне значення в стовпцях «продукт» і «продажі» було зміщено вгору на 2, а два нижні значення в кожному стовпці змінено на NaN.

Примітка . Повну документацію щодо функції shift() можна знайти тут .

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

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

Як додати рядки до Pandas DataFrame
Як додати стовпець до Pandas DataFrame
Як додати рядок заголовка до Pandas DataFrame

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

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