2016-03-30 9 views
1

pandas'da interpolate işleviyle çalışıyorum. İşte bir örnek vaka yapmak için bir oyuncak örneği:Pandalarda İnterpolate İşlevi Hakkında Belirsizlik

df=pd.DataFrame({'Data':np.random.normal(size=200), 'Data2':np.random.normal(size=200)}) 

df.iloc[1, 0] = np.nan 

print df 

print df.interpolate('nearest') 

Sorum: birden çok sütun üzerinde interpolate fonksiyon çalışır mı? Yani, eksik alanın değerini belirlemek için çok değişkenli analiz kullanıyor mu? Yoksa tek tek sütunlara mı bakar?

+0

sütunları gösteren (veya satır ekseni = 1 ise). – Alexander

cevap

0

docs referans çeşitli yöntemler - en sadece muhtemelen tek değişkenli scipy.interp1d ya da diğer tek değişkenli scipy yöntemlerle, index dayanmaktadır:

yöntemi: { 'lineer', 'zaman', 'endeksi' 'değerler', 'en yakın', 'sıfır', 'slinear', 'kuadratik', 'kübik', 'barycentric', 'krogh', 'polinom', 'spline' 'piecewise_polynomial', 'pchip'}

  • ‘Doğrusal’: İndeksi yok sayın ve değerleri eşit aralıklı olarak ele alın. MultiIndexes'te desteklenen tek yöntem budur.
  • varsayılan 'zaman': interpolasyon aralığına 'indeks', 'değerler' verili uzunluğunu değerlemek için günlük ve daha yüksek çözünürlüklü verileri üzerinde çalışır: endeksi gerçek sayısal değerleri kullanmak
  • 'yakın', 'sıfır', ' slinear ',' kuadratik ',' kübik ',' barycentric ',' polinom 'scipy.interpolate.interp1d'ye aktarılır. Hem "polinom" hem de "spline", bir sipariş belirtmenizi gerektirir (int), ör. df.interpolate (method = 'polinom', order = 4). Bunlar dizinin gerçek sayısal değerlerini kullanır.
  • ‘krogh’, ‘piecewise_polynomial’, ‘spline’ ve ‘pchip’, benzer adlara sahip scipy enterpolasyon yöntemleri etrafındaki tüm sarmalayıcılardır. Bunlar dizinin gerçek sayısal değerlerini kullanır.

Scipy docs ve çizelgeleri çıktı üretmesi here

+0

Bunu gördüm. Ama ben çok değişkenli bir imputation mı kullandıkları yoksa sadece 'interp1d' kullanıp kullanmadıklarını anlamıyorum. Bunu çok değişkenli analiz ile yapmasını umuyorum. –

+0

Scipy belgelerine bakarsanız, scipy işlevlerinin 1 boyutlu argüman aldığını görürsünüz, böylece verilen 'axis' anahtar sözcüğüne bağlı olarak tek bir sütunun veya satırın değerlerini kullanırlar (' default = 0' Bu yüzden tek tek sütunları girdi olarak kullanın). – Stefan