從R文檔中的以下代碼link我想弄清楚如何爲數據的每個原始點提取單個值(「密度」) frame 這樣,我就可以使用新的列來進一步應用,這些應用程序在3D空間中具有「點」密度。估計並提取來自3D內核密度的點值R
我看着這個SO問題:link,但該代碼給出了一個51層矩陣..我堅持如何獲得150點值。
在我的情況下,我擔心的是使用三變量例如:
fhat <- kde(x=iris[,1:3])
這是代碼,它給出了一個很好的情節,但我沒能得到一個單一的價值爲每個150行/分的虹膜數據集
library(ks)
library(MASS)
data(iris)
## univariate example
fhat <- kde(x=iris[,2])
plot(fhat, cont=50, col.cont="blue", cont.lwd=2, xlab="Sepal length")
## bivariate example
fhat <- kde(x=iris[,2:3])
plot(fhat, display="filled.contour2", cont=seq(10,90,by=10))
plot(fhat, display="persp", thin=3, border=1, col="white")
## trivariate example
fhat <- kde(x=iris[,2:4])
plot(fhat, drawpoints=TRUE)
謝謝,糾正錯誤! – Mark
'ks'軟件包有一些私人方法來生成圖。因此,它們中的代碼顯示瞭如何獲得繪圖值。您可以在R控制檯中輸入'ks ::: plotkde.1d'(和'.2d'和'3d'變體)來查看這些功能。你也可以用str(fhat)來查看結果計算的數據。看看有沒有人會回答路徑。如果他們不這樣做或者他們混淆不清,那麼在代碼中添加令人困惑/不足的目標代碼就可以確定一條富有成效的路徑。 – hrbrmstr
我想要做的是使用每點密度值來設置scatter3d中繪製點的顏色(可能通過在有限數量的密度類別中合併值),以便點雲例如可以被着色爲淺紅色基於denisty非常暗紅色。 Plotly沒有辦法在這些圖中自己做這件事,所以我有一個繞過的想法,但是需要首先有一個密度值列。 我看了你已經提到的代碼,但無法理解它 – Mark