Як отримати число з рядка в pandas


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

 df[' my_column ']. str . extract (' (\d+) ')

Цей конкретний синтаксис витягне числа з кожного рядка в стовпець під назвою my_column у pandas DataFrame.

Примітка . Під час використання регулярного виразу \d означає «будь-яку цифру», а + означає «одну або більше».

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

Приклад: видобути число з рядка в Pandas

Припустимо, у нас є наступний DataFrame pandas, який містить інформацію про продажі різних продуктів:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' product ': ['A33', 'B34', 'A22', 'A50', 'C200', 'D7', 'A9', 'A13'],
                   ' sales ': [18, 22, 19, 14, 14, 11, 20, 28]})

#view DataFrame
print (df)

  product sales
0 A33 18
1 B34 22
2 A22 19
3 A50 14
4 C200 14
5 D7 11
6 A9 20
7 A13 28

Припустімо, ми хочемо отримати номер кожного рядка зі стовпця продукту .

Для цього ми можемо використати такий синтаксис:

 #extract numbers from strings in 'product' column
df[' product ']. str . extract (' (\d+) ')

	0
0 33
1 34
2 22
3 50
4,200
5 7
6 9
7 13

Результатом є DataFrame, який містить лише числа в кожному рядку стовпця Product .

Наприклад:

  • Формула виділяє 33 із рядка A33 у першому рядку.
  • Формула витягує 34 із рядка B34 у першому рядку.
  • Формула виділяє 22 із рядка A22 у першому рядку.

І так далі.

Якщо ви хочете, ви також можете зберегти ці числові значення в новому стовпці DataFrame:

 #extract numbers from strings in 'product' column and store them in new column
df[' product_numbers '] = df[' product ']. str . extract (' (\d+) ')

#view updated DataFrame
print (df)

  product sales product_numbers
0 A33 18 33
1 B34 22 34
2 A22 19 22
3 A50 14 50
4 C200 14,200
5 D7 11 7
6 A9 20 9
7 A13 28 13

Новий стовпець під назвою product_numbers містить лише числа для кожного рядка в стовпці product .

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

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

Pandas: Як сортувати DataFrame на основі рядкового стовпця
Pandas: як видалити певні символи з рядків
Pandas: пошук рядка в усіх стовпцях DataFrame

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

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