Pandalar'da bir dizeden sayı nasıl çıkarılır
Pandalarda bir dizeden sayıları çıkarmak için aşağıdaki temel sözdizimini kullanabilirsiniz:
df[' my_column ']. str . extract (' (\d+) ')
Bu özel sözdizimi, her dizedeki sayıları pandas DataFrame’de my_column adlı bir sütuna çıkaracaktır.
Not : Normal bir ifade kullanıldığında, \d “herhangi bir rakamı” temsil eder ve + ise “bir veya daha fazla” anlamına gelir.
Aşağıdaki örnekte bu fonksiyonun pratikte nasıl kullanılacağı gösterilmektedir.
Örnek: sayıyı Pandas’taki bir dizeden çıkarın
Çeşitli ürünlerin satışıyla ilgili bilgileri içeren aşağıdaki pandalar DataFrame’e sahip olduğumuzu varsayalım:
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
Her dizenin numarasını ürün sütunundan çıkarmak istediğimizi varsayalım.
Bunu yapmak için aşağıdaki sözdizimini kullanabiliriz:
#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
Sonuç, yalnızca Ürün sütununun her satırındaki sayıları içeren bir DataFrame’dir.
Örneğin:
- Formül, ilk satırdaki A33 dizesinden 33’ü çıkarır.
- Formül, ilk satırdaki B34 dizesinden 34’ü çıkarır.
- Formül, ilk satırdaki A22 dizesinden 22’yi çıkarır.
Ve benzeri.
İsterseniz bu sayısal değerleri DataFrame’in yeni bir sütununda da saklayabilirsiniz:
#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 adlı yeni sütun, yalnızca ürün sütunundaki her dizeye ilişkin sayıları içerir.
Ek kaynaklar
Aşağıdaki eğitimlerde pandalarda diğer yaygın işlemlerin nasıl gerçekleştirileceği açıklanmaktadır:
Pandalar: DataFrame’i dize sütununa göre sıralama
Pandalar: Belirli karakterler dizelerden nasıl kaldırılır
Pandalar: DataFrame’in tüm sütunlarında bir dize arayın