Pandas: як вставити рядок у певну позицію індексу


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

 #insert row in between index position 2 and 3
df. loc [ 2.5 ] = value1, value2, value3, value4

#sort index
df = df. sort_index (). reset_index (drop= True )

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

Приклад: вставте рядок у певну позицію індексу в Pandas

Припустімо, що у нас є наступні pandas DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' points ': [18, 22, 19, 14, 14, 11, 20, 28],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print (df)

  team points assists rebounds
0 A 18 5 11
1 B 22 7 8
2 C 19 7 10
3 D 14 9 6
4 E 14 12 6
5 F 11 9 5
6 G 20 9 9
7:28 4 12

Ми можемо використовувати такий синтаксис, щоб вставити рядок між позиціями індексу 2 і 3:

 #insert row in between index position 2 and 3
df. loc [ 2.5 ] = 'Z', 10, 5, 7

#sort index
df = df. sort_index (). reset_index (drop= True )

#view updated DataFrame
print (df)

  team points assists rebounds
0 A 18 5 11
1 B 22 7 8
2 C 19 7 10
3 Z 10 5 7
4 D 14 9 6
5 E 14 12 6
6 F 11 9 5
7 G 20 9 9
8:28 a.m. 4:12

Зверніть увагу, що між попередніми позиціями індексу 2 і 3 було вставлено рядок із такою інформацією:

  • команда: З
  • балів: 10
  • результативні передачі: 5
  • підбирання: 7

Використовуючи функції sort_index() і reset_index() , ми змогли перепризначити значення індексу в діапазоні від 0 до 8.

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

Наприклад, якщо ми спробуємо вставити новий рядок лише з трьома значеннями, ми отримаємо помилку:

 #attempt to insert row with only three values
df. loc [ 2.5 ] = 10, 5, 7

ValueError : cannot set a row with mismatched columns

Ми отримуємо ValueError , оскільки кількість значень у новому рядку не відповідає кількості існуючих стовпців у DataFrame.

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

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

Як вставити стовпець у Pandas DataFrame
Як додати рядки до Pandas DataFrame
Як видалити рядки в Pandas DataFrame на основі умови

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

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