Python'da Veri Temizleme Sanatında Ustalaşmak - KDnuggets

Python'da Veri Temizleme Sanatında Ustalaşmak – KDnuggets

Kaynak Düğüm: 2939047

Python'da Veri Temizleme Sanatında Ustalaşmak
Yazara göre resim
 

Veri temizleme, herhangi bir veri analizi sürecinin kritik bir parçasıdır. Bu, hataları kaldırdığınız, eksik verileri ele aldığınız ve verilerinizin üzerinde çalışabileceğiniz bir formatta olduğundan emin olduğunuz adımdır. İyi temizlenmiş bir veri kümesi olmadan sonraki analizler çarpık veya hatalı olabilir.

Bu makale size pandas, numpy, seaborn ve matplotlib gibi güçlü kitaplıkları kullanarak Python'da veri temizlemeye yönelik çeşitli temel teknikleri tanıtmaktadır.

Veri temizlemenin mekaniğine dalmadan önce önemini anlayalım. Gerçek dünya verileri genellikle karmaşıktır. Yinelenen girişler, yanlış veya tutarsız veri türleri, eksik değerler, alakasız özellikler ve aykırı değerler içerebilir. Tüm bu faktörler, verileri analiz ederken yanıltıcı sonuçlara yol açabilir. Bu, veri temizlemeyi veri bilimi yaşam döngüsünün vazgeçilmez bir parçası haline getirir.

Aşağıdaki veri temizleme görevlerini ele alacağız.
 

Python'da Veri Temizleme Sanatında Ustalaşmak
Yazara göre resim

Başlamadan önce gerekli kütüphaneleri içe aktaralım. Veri işleme için pandaları, görselleştirmeler için ise seaborn ve matplotlib'i kullanacağız.

Ayrıca tarihleri ​​değiştirmek için datetime Python modülünü de içe aktaracağız.

import pandas as pd
import seaborn as sns
import datetime as dt
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker

Öncelikle verilerimizi yüklememiz gerekecek. Bu örnekte pandaları kullanarak bir CSV dosyası yükleyeceğiz. Sınırlayıcı argümanını da ekliyoruz.

df = pd.read_csv('F:KDNuggetsKDN Mastering the Art of Data Cleaning in Pythonproperty.csv', delimiter= ';')

Daha sonra, yapısını, ne tür değişkenlerle çalıştığımızı ve eksik değerlerin olup olmadığını anlamak için verileri incelemek önemlidir. İçe aktardığımız veriler çok büyük olmadığından veri setinin tamamına bir göz atalım.

# Look at all the rows of the dataframe
display(df)

Veri kümesinin nasıl göründüğü aşağıda açıklanmıştır.

 

Python'da Veri Temizleme Sanatında Ustalaşmak
 

Bazı eksik değerlerin olduğunu hemen görebilirsiniz. Ayrıca tarih formatları da tutarsız.

Şimdi info() metodunu kullanarak DataFrame özetine bir göz atalım.

# Get a concise summary of the dataframe
print(df.info())

İşte kod çıktısı.

 

Python'da Veri Temizleme Sanatında Ustalaşmak
 

Yalnızca square_feet sütununun herhangi bir NULL değeri olmadığını görebiliriz, dolayısıyla bunu bir şekilde halletmemiz gerekecek. Ayrıca, reklam_tarihi ve satış_tarihi sütunları, bunun bir tarih olması gerekse de nesne veri türüdür.

Sütun konumu tamamen boş. İhtiyacımız var mı?

Bu sorunlarla nasıl başa çıkacağınızı size göstereceğiz. Gereksiz sütunların nasıl silineceğini öğrenerek başlayacağız.

Veri kümesinde, veri analizimizde ihtiyaç duymadığımız iki sütun var, bu nedenle bunları kaldıracağız.

İlk sütun alıcıdır. Alıcının adı analizi etkilemediğinden buna ihtiyacımız yok.

Belirtilen sütun adıyla drop() yöntemini kullanıyoruz. Bir sütunu silmek istediğimizi belirtmek için ekseni 1 olarak ayarlıyoruz. Ayrıca, mevcut DataFrame'i değiştirebilmemiz ve kaldırılan sütun olmadan yeni bir DataFrame oluşturmamamız için inplace bağımsız değişkeni True olarak ayarlanır.

df.drop('buyer', axis = 1, inplace = True)

Kaldırmak istediğimiz ikinci sütun konumdur. Bu bilgiye sahip olmak faydalı olsa da bu tamamen boş bir sütun, o yüzden onu kaldıralım.

İlk sütundakiyle aynı yaklaşımı izliyoruz.

df.drop('location', axis = 1, inplace = True)

Elbette bu iki sütunu aynı anda kaldırabilirsiniz.

df = df.drop(['buyer', 'location'], axis=1)

Her iki yaklaşım da aşağıdaki veri çerçevesini döndürür.

 

Python'da Veri Temizleme Sanatında Ustalaşmak

Veri kümenizde çeşitli nedenlerle yinelenen veriler oluşabilir ve analizinizi çarpıtabilir.

Veri setimizdeki kopyaları tespit edelim. İşte bunu nasıl yapacağınız.

Aşağıdaki kod yöntemi kullanır kopyalanmış() tüm veri kümesindeki kopyaları dikkate almak için. Varsayılan ayarı, bir değerin ilk oluşumunu benzersiz ve sonraki oluşumlarını yinelenenler olarak dikkate almaktır. Bu davranışı kullanarak değiştirebilirsiniz. tutmak parametre. Örneğin, df.duplicated(keep=False) ilk oluşum da dahil olmak üzere tüm kopyaları Doğru olarak işaretler.

# Detecting duplicates
duplicates = df[df.duplicated()]
duplicates

İşte çıktı.

 

Python'da Veri Temizleme Sanatında Ustalaşmak
 

Dizin 3'e sahip satır yinelenen olarak işaretlendi çünkü aynı değerlere sahip satır 2 ilk kez ortaya çıkıyor.

Şimdi aşağıdaki kodla yaptığımız kopyaları kaldırmamız gerekiyor.

# Detecting duplicates
duplicates = df[df.duplicated()]
duplicates

The drop_duplicates() işlev, kopyaları tanımlarken tüm sütunları dikkate alır. Yalnızca belirli sütunları dikkate almak istiyorsanız, bunları bu işleve şu şekilde bir liste olarak iletebilirsiniz: df.drop_duplicates(subset=['column1', 'column2']).

 

Python'da Veri Temizleme Sanatında Ustalaşmak
 

Gördüğünüz gibi yinelenen satır kaldırıldı. Ancak indeksleme aynı kaldı ve indeks 3 eksikti. Endeksleri sıfırlayarak bunu düzelteceğiz.

df = df.reset_index(drop=True)

Bu görev kullanılarak gerçekleştirilir. reset_index() işlev. drop=True argümanı orijinal dizini atmak için kullanılır. Bu bağımsız değişkeni eklemezseniz eski dizin DataFrame'inize yeni bir sütun olarak eklenecektir. drop=True ayarını yaparak, pandalara eski dizini unutmasını ve onu varsayılan tam sayı dizinine sıfırlamasını söylüyorsunuz.

Pratik yapmak için şunu deneyin: bu Microsoft veri kümesindeki kopyaları kaldır.

Bazen veri türleri yanlış ayarlanmış olabilir. Örneğin bir tarih sütunu dize olarak yorumlanabilir. Bunları uygun türlere dönüştürmeniz gerekiyor.

Veri kümemizde, nesne veri türü olarak gösterildikleri için bunu reklam_tarihi ve satış_tarihi sütunları için yapacağız. Ayrıca tarih tarihleri ​​satırlar arasında farklı şekilde biçimlendirilir. Bunu bugüne dönüştürmenin yanı sıra tutarlı hale getirmemiz gerekiyor.

En kolay yol, to_datetime() yöntem. Yine aşağıda gösterildiği gibi bu işlemi sütun sütun yapabilirsiniz.

Bunu yaparken dayfirst argümanını True olarak ayarlıyoruz çünkü bazı tarihler ilk günle başlıyor.

# Converting advertisement_date column to datetime
df['advertisement_date'] = pd.to_datetime(df['advertisement_date'], dayfirst = True) # Converting sale_date column to datetime
df['sale_date'] = pd.to_datetime(df['sale_date'], dayfirst = True)

Ayrıca her iki sütunu da aynı anda dönüştürebilirsiniz. uygulamak() ile yöntem to_datetime().

# Converting advertisement_date and sale_date columns to datetime
df[['advertisement_date', 'sale_date']] = df[['advertisement_date', 'sale_date']].apply(pd.to_datetime, dayfirst = True)

Her iki yaklaşım da size aynı sonucu verir.

 

Python'da Veri Temizleme Sanatında Ustalaşmak
 

Artık tarihler tutarlı bir formatta. Tüm verilerin dönüştürülmediğini görüyoruz. reklam_tarihi'nde bir, sale_date'de iki NaT değeri vardır. Bu, tarihin eksik olduğu anlamına gelir.

Sütunların tarihlere dönüştürülüp dönüştürülmediğini kontrol edelim. bilgi() yöntemi.

# Get a concise summary of the dataframe
print(df.info())

 

Python'da Veri Temizleme Sanatında Ustalaşmak
 

Gördüğünüz gibi her iki sütun da datetime64[ns] formatında değil.

Şimdi verileri TEXT'ten NUMERIC'e dönüştürmeyi deneyin. Airbnb veri kümesi.

Gerçek dünyadaki veri kümelerinde sıklıkla eksik değerler bulunur. Bazı algoritmalar bu tür değerleri işleyemediğinden, eksik verilerin işlenmesi hayati önem taşır.

Örneğimizde bazı eksik değerler de var; bu nedenle eksik verileri işlemeye yönelik en yaygın iki yaklaşıma bir göz atalım.

Eksik Değerlere Sahip Satırları Silme

Eksik veri içeren satırların sayısı toplam gözlem sayısına göre önemsiz kalıyorsa bu satırları silmeyi düşünebilirsiniz.

Örneğimizde son satırda metrekare ve ilan tarihi dışında herhangi bir değer bulunmamaktadır. Bu tür verileri kullanamayız, bu nedenle bu satırı kaldıralım.

İşte satırın indeksini belirttiğimiz kod.

df = df.drop(8)

DataFrame artık buna benziyor.

 

Python'da Veri Temizleme Sanatında Ustalaşmak
 

Son satır silindi ve DataFrame'imiz artık daha iyi görünüyor. Ancak hâlâ başka bir yaklaşımla ele alacağımız bazı eksik veriler var.

Eksik Değerleri Atama

Önemli derecede eksik verileriniz varsa, verileri silmekten daha iyi bir strateji atfetme olabilir. Bu süreç, diğer verilere dayanarak eksik değerlerin doldurulmasını içerir. Sayısal veriler için yaygın olarak kullanılan hesaplama yöntemleri, merkezi eğilim ölçüsünün (ortalama, medyan, mod) kullanılmasını içerir.

Zaten değiştirdiğimiz DataFrame'imizde, reklam_tarihi ve satış_tarihi sütunlarında NaT (Zaman Değil) değerlerimiz var. Bu eksik değerleri aşağıdakileri kullanarak uygulayacağız: kastetmek() yöntemi.

kod kullanır dolgu() Boş değerleri bulma ve ortalama değerle doldurma yöntemi.

# Imputing values for numerical columns
df['advertisement_date'] = df['advertisement_date'].fillna(df['advertisement_date'].mean())
df['sale_date'] = df['sale_date'].fillna(df['sale_date'].mean())

Aynı şeyi tek satır kodla da yapabilirsiniz. biz kullanıyoruz uygulamak() kullanılarak tanımlanan işlevi uygulamak için lambda. Yukarıdakinin aynısı, bu işlev şunu kullanır: dolgu() ve kastetmek() Eksik değerleri doldurma yöntemleri.

# Imputing values for multiple numerical columns
df[['advertisement_date', 'sale_date']] = df[['advertisement_date', 'sale_date']].apply(lambda x: x.fillna(x.mean()))

Her iki durumda da çıktı şuna benzer.

 

Python'da Veri Temizleme Sanatında Ustalaşmak
 

sale_date sütunumuzda artık ihtiyacımız olmayan zamanlar var. Bunları kaldıralım.

Kullanacağız strftime() Tarihleri ​​dize temsillerine ve belirli bir formata dönüştüren yöntem.

df['sale_date'] = df['sale_date'].dt.strftime('%Y-%m-%d')

 

Python'da Veri Temizleme Sanatında Ustalaşmak
 

Tarihler artık düzenli görünüyor.

Kullanmanız gerekiyorsa strftime() birden fazla sütunda tekrar kullanabilirsiniz lambda aşağıdaki şekilde.

df[['date1_formatted', 'date2_formatted']] = df[['date1', 'date2']].apply(lambda x: x.dt.strftime('%Y-%m-%d'))

Şimdi eksik kategorik değerleri nasıl yükleyebileceğimizi görelim.

Kategorik veriler, benzer özelliklere sahip bilgileri gruplamak için kullanılan bir veri türüdür. Bu grupların her biri bir kategoridir. Kategorik veriler sayısal değerler alabilir (“1” erkek, “2” kadın” gibi), ancak bu sayıların matematiksel bir anlamı yoktur. Örneğin bunları birbirine ekleyemezsiniz.

Kategorik veriler genellikle iki kategoriye ayrılır:

  1. Nominal veri: Bu, kategorilerin yalnızca etiketlendiği ve belirli bir sıraya göre düzenlenemediği zamandır. Örnekler arasında cinsiyet (erkek, kadın), kan grubu (A, B, AB, O) veya renk (kırmızı, yeşil, mavi) yer alır.
  1. Sıra verileri: Bu, kategorilerin sıralanabileceği veya sıralanabileceği zamandır. Kategoriler arasındaki aralıklar eşit aralıklı olmasa da kategorilerin sırasının bir anlamı vardır. Örnekler arasında derecelendirme ölçekleri (bir filmin 1'den 5'e kadar derecelendirmesi), eğitim düzeyi (lise, lisans, yüksek lisans) veya kanserin aşamaları (Aşama I, Aşama II, Aşama III) yer alır.

Eksik kategorik verileri atamak için genellikle mod kullanılır. Örneğimizde, property_category sütunu kategorik (nominal) veridir ve iki satırda veri eksiktir.

Eksik değerleri mode ile değiştirelim.

# For categorical columns
df['property_category'] = df['property_category'].fillna(df['property_category'].mode()[0])

Bu kod kullanır dolgu() özellik_kategorisi sütunundaki tüm NaN değerlerini değiştirme işlevi. Moduyla değiştirir.

Ek olarak, [0] kısmı bu Seriden ilk değeri çıkarmak için kullanılır. Birden fazla mod varsa bu ilkini seçecektir. Yalnızca bir mod olsa bile yine de iyi çalışıyor.

İşte çıktı.

 

Python'da Veri Temizleme Sanatında Ustalaşmak
 

Şu anda veriler oldukça iyi görünüyor. Geriye kalan tek şey aykırı değerlerin olup olmadığını görmek.

Bu konuda boş değerlerle başa çıkma alıştırması yapabilirsiniz Meta röportaj sorusuNULL'ları sıfırlarla değiştirmeniz gerekecek.

Aykırı değerler, bir veri kümesindeki diğer gözlemlerden belirgin biçimde farklı olan veri noktalarıdır. Veri setindeki diğer değerlerden istisnai derecede uzakta bulunabilirler ve genel bir modelin dışında kalabilirler. Verilerin geri kalanıyla karşılaştırıldığında değerlerinin önemli ölçüde daha yüksek veya daha düşük olması nedeniyle sıra dışı olarak değerlendiriliyorlar.

Aykırı değerler aşağıdakiler gibi çeşitli nedenlerden dolayı ortaya çıkabilir:

  • Ölçüm veya giriş hataları
  • Veri bozulması
  • Gerçek istatistiksel anormallikler

Aykırı değerler, veri analizinizin ve istatistiksel modellemenizin sonuçlarını önemli ölçüde etkileyebilir. Bunlar çarpık bir dağılıma, yanlılığa yol açabilir veya temel istatistiksel varsayımları geçersiz kılabilir, tahmin edilen model uyumunu bozabilir, tahmine dayalı modellerin tahmin doğruluğunu azaltabilir ve yanlış sonuçlara yol açabilir.

Aykırı değerleri tespit etmek için yaygın olarak kullanılan yöntemlerden bazıları Z-skoru, IQR (Çeyrekler Arası Aralık), kutu grafikleri, dağılım grafikleri ve veri görselleştirme teknikleridir. Bazı ileri durumlarda makine öğrenmesi yöntemleri de kullanılmaktadır.

Verilerin görselleştirilmesi aykırı değerlerin belirlenmesine yardımcı olabilir. Seaborn'un kutu grafiği bunun için kullanışlıdır.

plt.figure(figsize=(10, 6))
sns.boxplot(data=df[['advertised_price', 'sale_price']])

Şeklin genişliğini ve yüksekliğini inç cinsinden ayarlamak için plt.figure() işlevini kullanırız.

Daha sonra, reklamı_fiyat ve indirimli_fiyat sütunları için buna benzeyen kutu grafiğini oluşturuyoruz.

 

Python'da Veri Temizleme Sanatında Ustalaşmak
 

Bunu yukarıdaki koda ekleyerek daha kolay kullanım için çizim geliştirilebilir.

plt.xlabel('Prices')
plt.ylabel('USD')
plt.ticklabel_format(style='plain', axis='y')
formatter = ticker.FuncFormatter(lambda x, p: format(x, ',.2f'))
plt.gca().yaxis.set_major_formatter(formatter)

Her iki eksen için etiketleri ayarlamak için yukarıdaki kodu kullanıyoruz. Ayrıca y eksenindeki değerlerin bilimsel gösterimde olduğunu fark ediyoruz ve bunu fiyat değerleri için kullanamıyoruz. Bu yüzden plt.ticklabel_format() fonksiyonunu kullanarak bunu düz stile dönüştürüyoruz.

Daha sonra y eksenindeki değerleri virgüllerle binlik ayırıcı ve ondalık nokta olarak gösterecek formatlayıcıyı oluşturuyoruz. Son kod satırı bunu eksene uygular.

Çıktı artık bu şekilde görünüyor.

 

Python'da Veri Temizleme Sanatında Ustalaşmak
 

Şimdi, aykırı değeri nasıl tespit edip kaldıracağız?

Yollardan biri IQR yöntemini kullanmaktır.

IQR veya Çeyrekler Arası Aralık, bir veri kümesini çeyreklere bölerek değişkenliği ölçmek için kullanılan istatistiksel bir yöntemdir. Çeyrekler, sıralı bir veri kümesini dört eşit parçaya böler ve ilk çeyrek (25. yüzdelik) ile üçüncü çeyrek (75. yüzdelik) aralığındaki değerler çeyrekler arası aralığı oluşturur.

Çeyrekler arası aralık, verilerdeki aykırı değerleri tanımlamak için kullanılır. İşte nasıl çalışıyor:

  1. Öncelikle ilk çeyreği (Q1), üçüncü çeyreği (Q3) hesaplayın ve ardından IQR'yi belirleyin. IQR, Q3 – Q1 olarak hesaplanır.
  2. Q1 – 1.5IQR'nin altındaki veya Q3 + 1.5IQR'nin üzerindeki herhangi bir değer aykırı değer olarak kabul edilir.

Kutu grafiğimizde kutu aslında IQR'yi temsil ediyor. Kutunun içindeki çizgi medyandır (veya ikinci çeyrektir). Kutu grafiğindeki 'bıyıklar', Q1.5 ve Q1'ten itibaren 3*IQR dahilindeki aralığı temsil eder.

Bu bıyıkların dışındaki herhangi bir veri noktası aykırı değer olarak değerlendirilebilir. Bizim durumumuzda bunun değeri 12,000,000$'dır. Kutu grafiğine bakarsanız bunun ne kadar net bir şekilde temsil edildiğini göreceksiniz; bu da veri görselleştirmenin aykırı değerleri tespit etmede neden önemli olduğunu gösteriyor.

Şimdi Python kodunda IQR yöntemini kullanarak aykırı değerleri kaldıralım. İlk olarak, reklamı yapılan fiyat aykırılıklarını kaldıracağız.

Q1 = df['advertised_price'].quantile(0.25)
Q3 = df['advertised_price'].quantile(0.75)
IQR = Q3 - Q1
df = df[~((df['advertised_price'] (Q1 - 1.5 * IQR)) |(df['advertised_price'] > (Q3 + 1.5 * IQR)))]

İlk önce ilk çeyreği (veya 25. yüzdelik dilimi) aşağıdaki formülü kullanarak hesaplıyoruz: çeyreklik() işlev. Aynısını üçüncü çeyrek veya 75. yüzdelik dilim için de yapıyoruz.

Verilerin sırasıyla %25 ve %75'inin altına düştüğü değerleri gösterirler.

Daha sonra çeyrekler arasındaki farkı hesaplıyoruz. Şu ana kadar her şey sadece IQR adımlarını Python koduna çevirmek.

Son adım olarak aykırı değerleri kaldırıyoruz. Başka bir deyişle, Q1 – 1.5 * IQR'den küçük veya Q3 + 1.5 * IQR'den büyük tüm veriler.

'~' operatörü koşulu geçersiz kılar, bu nedenle elimizde yalnızca aykırı olmayan veriler kalır.

Daha sonra aynısını satış fiyatıyla da yapabiliriz.

Q1 = df['sale_price'].quantile(0.25)
Q3 = df['sale_price'].quantile(0.75)
IQR = Q3 - Q1
df = df[~((df['sale_price'] (Q1 - 1.5 * IQR)) |(df['sale_price'] > (Q3 + 1.5 * IQR)))]

Elbette bunu kullanarak daha kısa ve öz bir şekilde yapabilirsiniz. döngü için.

for column in ['advertised_price', 'sale_price']: Q1 = df[column].quantile(0.25) Q3 = df[column].quantile(0.75) IQR = Q3 - Q1 df = df[~((df[column] (Q1 - 1.5 * IQR)) |(df[column] > (Q3 + 1.5 * IQR)))]

Döngü iki sütunu yineler. Her sütun için IQR'yi hesaplar ve ardından DataFrame'deki satırları kaldırır.

Bu işlemin önce reklamı yapılan_fiyat ve ardından indirimli_fiyat için sırayla yapıldığını lütfen unutmayın. Sonuç olarak, DataFrame her sütun için yerinde değiştirilir ve her iki sütunda da aykırı değer olması nedeniyle satırlar kaldırılabilir. Bu nedenle, bu işlem, reklamı yapılan_fiyat ve indirimli_fiyat için aykırı değerlerin bağımsız olarak kaldırılmasına ve sonuçların daha sonra birleştirilmesine kıyasla daha az satırla sonuçlanabilir.

Örneğimizde her iki durumda da çıktı aynı olacaktır. Kutu grafiğinin nasıl değiştiğini görmek için, daha önce olduğu gibi aynı kodu kullanarak yeniden grafiğini çizmemiz gerekir.

plt.figure(figsize=(10, 6))
sns.boxplot(data=df[['advertised_price', 'sale_price']])
plt.xlabel('Prices')
plt.ylabel('USD')
plt.ticklabel_format(style='plain', axis='y')
formatter = ticker.FuncFormatter(lambda x, p: format(x, ',.2f'))
plt.gca().yaxis.set_major_formatter(formatter)

İşte çıktı.

 

Python'da Veri Temizleme Sanatında Ustalaşmak
 

Aşağıdaki soruyu çözerek Python'da yüzdelik hesaplama alıştırması yapabilirsiniz: Genel Kurul görüşme sorusu.

Veri temizleme, veri analizi sürecinde çok önemli bir adımdır. Zaman alıcı olsa da, bulgularınızın doğruluğunu sağlamak çok önemlidir.

Neyse ki Python'un zengin kütüphane ekosistemi bu süreci daha yönetilebilir hale getiriyor. Gereksiz satır ve sütunları nasıl kaldıracağımızı, verileri yeniden biçimlendireceğimizi ve eksik değerler ve aykırı değerlerle nasıl başa çıkacağımızı öğrendik. Bunlar çoğu veri üzerinde gerçekleştirilmesi gereken olağan adımlardır. Ancak bazen şunları yapmanız da gerekebilir: iki sütunu bir sütunda birleştirin, mevcut verileri doğrulayın, ona etiket atayınya da beyaz boşluklardan kurtulun.

Dağınık, gerçek dünya verilerini güvenle analiz edebileceğiniz, iyi yapılandırılmış bir veri kümesine dönüştürmenize olanak tanıdığı için tüm bunlar veri temizlemedir. Başladığımız veri kümesini, sonunda elde ettiğimiz veri kümesiyle karşılaştırın.

Bu sonuçtan tatmin olmuyorsanız ve temiz veriler sizi tuhaf bir şekilde heyecanlandırmıyorsa, veri biliminde ne yapıyorsunuz!?
 

Nate Rosidi bir veri bilimcisi ve ürün stratejisidir. Aynı zamanda analitik öğreten bir yardımcı profesördür ve kurucusudur. StrataScratch, veri bilimcilerinin en iyi şirketlerden gelen gerçek röportaj sorularıyla röportajlarına hazırlanmalarına yardımcı olan bir platform. onunla bağlantı kurun Twitter: StrataScratch or LinkedIn.

Zaman Damgası:

Den fazla KDNuggets