2016-08-24 102 views
1

我試圖讓Seaborn kdeplot示例在我的數據集上工作。出於某種原因,我的一個數據集完全沒有繪圖,但另一個似乎正在繪圖。爲了得到一個最小的工作示例,我從我的非常大的數據集中只抽取了10行。Seaborn kdeplot不能繪製一些數據?

我輸入的數據是這樣的:

#Dataframe dfA 
    index x  y  category 
0 595700 5 1.000000 14.0 
1 293559 4 1.000000 14.0 
2 562295 3 0.000000 14.0 
3 219426 4 1.000000 14.0 
4 592731 2 1.000000 14.0 
5 178573 3 1.000000 14.0 
6 553156 4 0.500000 14.0 
7 385031 1 1.000000 14.0 
8 391681 3 0.999998 14.0 
9 492771 2 1.000000 14.0 

# Dataframe dfB 
    index x  y  category 
0 56345 3 1.000000 6.0 
1 383741 4 1.000000 6.0 
2 103044 2 1.000000 6.0 
3 297357 5 1.000000 6.0 
4 257508 3 1.000000 6.0 
5 223600 2 0.999938 6.0 
6 44530 2 1.000000 6.0 
7 82925 3 1.000000 6.0 
8 169592 3 0.500000 6.0 
9 229482 4 0.285714 6.0 

我的代碼片段看起來是這樣的:

爲什麼不從數據框中dfA數據實際繪圖?

+2

您是隻創建一個座標軸對象並將它們繪製到同一個座標系中(甚至不需要繪製座標軸)?關於'''f,axarr = plt.subplots(2)'''''sns.kdeplot(dfA.x,dfA.y, cmap =「Reds」,shade = True,shade_lowest = False,ax = axarr [0])'''+ sns.kdeplot(dfB.x,dfB.y, cmap =「Blues」,shade = True,shade_lowest = False,ax = axarr [1])''' – sascha

+1

我試圖在同一軸上繪製兩者。但即使我評論第二條情節評論,dfA也不會出現 – Joe

回答

1

我不認爲高斯KDE很適合您的任何數據集。你有一個具有離散值的變量和一個變量,其中大部分值似乎是常數。這不能很好地通過二元高斯分佈建模。

至於究竟發生了什麼,如果沒有完整的數據集,我不能肯定地說,但我期望KDE帶寬(特別是在y軸上)結束非常非常窄,使得具有不可忽略的密度的區域是小。你可以嘗試設置更寬的帶寬,但是我的建議是使用不同類型的數據。