İkilileştirme, Kovalamalama ve Kodlama

PySpark ile Özellik Mühendisliği

John Hogue

Lead Data Scientist

İkilileştirme

FIREPLACES olur Has_Fireplace
1 1
3 1
1 1
2 1
0 0
PySpark ile Özellik Mühendisliği

İkilileştirme

from pyspark.ml.feature import Binarizer

# Veri tipini double'a dönüştürün df = df.withColumn('FIREPLACES', df['FIREPLACES'].cast('double'))
# İkilileştirme dönüştürücüsü oluşturun bin = Binarizer(threshold=0.0, inputCol='FIREPLACES', outputCol='FireplaceT') # Dönüştürücüyü uygulayın df = bin.transform(df)
# Sonuçları inceleyin df[['FIREPLACES','FireplaceT']].show(3)
+----------+-------------+
|FIREPLACES|   FireplaceT|
+----------+-------------+
|       0.0|          0.0|
|       1.0|          1.0|
|       2.0|          1.0|
+----------+-------------+
ilk 3 satır gösteriliyor
PySpark ile Özellik Mühendisliği

Kovalamalama

from pyspark.ml.feature import Bucketizer

# Veriyi nasıl böleceğinizi tanımlayın splits = [0, 1, 2, 3, 4, float('Inf')]
# Kovalamalama dönüştürücüsü oluşturun buck = Bucketizer(splits=splits, inputCol='BATHSTOTAL', outputCol='baths') # Dönüştürücüyü uygulayın df = buck.transform(df)
# Sonuçları inceleyin df[['BATHSTOTAL', 'baths']].show(4)
+----------+-----------------+
|BATHSTOTAL|baths            |
+----------+-----------------+
|         2|              2.0|
|         3|              3.0|
|         1|              1.0|
|         5|              4.0|
+----------+-----------------+
ilk 4 satır gösteriliyor

PySpark ile Özellik Mühendisliği

One-Hot Encoding

CITY olur LELM MAPW OAKD STP WB
LELM - Lake Elmo 1 0 0 0 0
MAPW - Maplewood 0 1 0 0 0
OAKD - Oakdale 0 0 1 0 0
STP - Saint Paul 0 0 0 1 0
WB - Woodbury 0 0 0 0 1
PySpark ile Özellik Mühendisliği

PySpark ile One-Hot Encoding

from pyspark.ml.feature import OneHotEncoder, StringIndexer
# Dizinleyici dönüştürücü oluşturun
stringIndexer = StringIndexer(inputCol='CITY', outputCol='City_Index')
# Dönüştürücüyü eğitin
model = stringIndexer.fit(df)
# Dönüştürücüyü uygulayın
indexed = model.transform(df)
PySpark ile Özellik Mühendisliği

PySpark ile One-Hot Encoding

# Kodlayıcı dönüştürücü oluşturun
encoder = OneHotEncoder(inputCol='City_Index', outputCol='City_Vec)
# Kodlayıcı dönüştürücüyü uygulayın
encoded_df = encoder.transform(indexed)
# Sonuçları inceleyin
encoded_df[['City_Vec']].show(4)
+-------------+
|     City_Vec|
+-------------+
|    (4,[],[])|
|    (4,[],[])|
|(4,[2],[1.0])|
|(4,[2],[1.0])|
+-------------+
ilk 4 satır gösteriliyor
PySpark ile Özellik Mühendisliği

Dönüşüme Başlayın!

PySpark ile Özellik Mühendisliği

Preparing Video For Download...