Gruplanmış veride özellik çıkarımı
Şimdi önceki egzersizin üzerine, ek bir özellik daha ekleyerek devam edeceksin: her kaynak bilgisayar tarafından kullanılan benzersiz protokol sayısı. Unutma, gruplanmış verilerle bu şekilde özellikler üretmek her zaman mümkündür: başlangıç noktası olarak tüm kategorik sütunlardaki benzersiz öğe sayılarını ve tüm sayısal sütunlardaki ortalamaları alabilirsin. Önceden yüklü flows, doğruluk ölçümü için cross_val_score(), AdaBoostClassifier(), ayrıca pandas (pd) ve numpy (np) mevcut.
Bu egzersiz
Python'da Machine Learning İş Akışları Tasarlama
kursunun bir parçasıdırEgzersiz talimatları
- Verilen grup yineleyicisi üzerinde bir
lambdafonksiyonu uygula ve her kaynak bilgisayarın kullandığı benzersiz protokol sayısını hesapla.protocolsütununu benzersiz değerlere indirgemek içinset()kullanabilirsin. - Sonucu, bir indeks vererek ve sütunu
protocololarak adlandırarak doğru şekle sahip bir veri çerçevesine dönüştür. - Yeni veri çerçevesini,
Xolarak mevcut olan eski veri çerçevesiyle birleştir. - Bu yeni veri kümesinde
AdaBoostClassifier()doğruluğunucross_val_score()ile değerlendir.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Create a feature counting unique protocols per source
protocols = flows.groupby('source_computer').apply(
lambda df: ____)
# Convert this feature into a dataframe, naming the column
protocols_DF = pd.DataFrame(
protocols, index=____, columns=____)
# Now concatenate this feature with the previous dataset, X
X_more = pd.concat([X, ____], axis=____)
# Refit the classifier and report its accuracy
print(____(____(
AdaBoostClassifier(), ____, y)))