2014-08-30 10 views
6

Düzenli veri analiz çalışmamda, deniz tabanı paketinin kullanıma sunulmasından bu yana% 100 python kullanmaya geçtim. Bu harika pakete büyük teşekkürler. Ancak, ex excel-chart özelliği özledim lmplot() işlevini kullanırken polyfit denklemi ve/veya R2 değerini görüntülemek için. Bunu eklemenin kolay bir yolu var mı?Denklem ve R2 metni ile Seaborn implotu

o değer yani hue, row veya col değişken kullanılarak çoklu regresyon nöbetleri (varken karşılık gerekenleri tanımsız oluyor çünkü lmplot ile otomatik yapılamaz
+0

olası yinelenen [Nasıl hesaplamak yapmak r-kare Python ve Numpy kullanarak?] (Http://stackoverflow.com/questions/893657/how-do-i-calculate-r-squared -using-python-and-numpy) – MattDMo

+1

Bu gerçekten bir kopya değil çünkü soru, bunun elle nasıl hesaplanacağını değil, otomatik olarak denizdeki fonksiyonlar tarafından eklenip eklenemeyeceğidir. – mwaskom

cevap

13

.

Ama bu benzer bir parçasıdır . jointplot işlev varsayılan olarak korelasyon katsayısı ve p değeri gösterir:

import seaborn as sns 
import numpy as np 

x, y = np.random.randn(2, 40) 
sns.jointplot(x, y, kind="reg") 

Ama herhangi bir işlev iletebilirsiniz isterseniz R^2, bunu yapabilirsiniz:.

from scipy import stats 
def r2(x, y): 
    return stats.pearsonr(x, y)[0] ** 2 
sns.jointplot(x, y, kind="reg", stat_func=r2) 

enter image description here

ait
+0

Teşekkürler, lmplot() 'ın güzel çoklu grafik özelliği yerine jointplot()' ı tek tek kullanabilirim. Bununla birlikte, üst/yan histogramları isteğe bağlı olabilir, böylece birçok şeyi lmplot() eşdeğerine paketleyebilirim. – user3287545

+0

Burada p değeri nedir (0,22)? Sanırım pearson korelasyon pearsonr değeridir. – cacert

+0

@cacert: bkz. Https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.pearsonr.html - iki tamamen bağımsız değişkenle böyle bir ilişkiyi görme olasılığı. – naught101