Saya ingin memperoleh interval kepercayaan 95% untuk centroid berdasarkan pada kesamaan Gower antara beberapa sampel mulivariat (data komunitas dari inti sedimen). Saya sejauh ini menggunakan vegan{}
paket dalam R untuk mendapatkan kesamaan Gower yang dimodifikasi antara core (berdasarkan Anderson 2006; sekarang termasuk dalam R sebagai bagian dari vegdist()
). Adakah yang tahu bagaimana saya bisa menghitung interval kepercayaan 95% untuk centroid, misalnya, situs pengambilan sampel, berdasarkan kesamaan Gower yang dimodifikasi?
Selain itu, jika memungkinkan, saya ingin merencanakan 95% CI ini pada PCO yang menunjukkan centroid, jadi jelas jika mereka tumpang tindih.
Untuk mendapatkan kesamaan Gower yang dimodifikasi, saya menggunakan:
dat.mgower <- vegdist(decostand(dat, "log"), "altGower")
Tapi sejauh yang saya tahu, Anda tidak mendapatkan centroid vegdist()
. Saya perlu mendapatkan centroid, lalu 95% CI, lalu plot mereka ... di R. Bantuan!
Anderson, MJ, KE Ellingsen, dan BH McArdle. 2006. Dispersi multivariat sebagai ukuran keanekaragaman beta. Ekologi Surat 9: 683–693.
sumber
Jawaban:
Saya tidak segera jelas apa centroid yang Anda inginkan, tetapi centroid yang terlintas dalam pikiran adalah titik dalam ruang multivariat di pusat massa poin per kelompok. Tentang ini, Anda ingin elips kepercayaan 95%. Kedua aspek dapat dihitung menggunakan
ordiellipse()
fungsi dalam vegan . Berikut ini adalah contoh yang dimodifikasi dari?ordiellipse
tetapi menggunakan PCO sebagai sarana untuk menanamkan perbedaan dalam ruang Euclidean dari mana kita dapat memperoleh centroid dan elips kepercayaan untuk kelompok berdasarkan pada variabel Manajemen AlamManagement
.Sekarang kami menampilkan 2 sumbu PCO pertama dan menambahkan elips kepercayaan 95% berdasarkan kesalahan standar rata-rata skor sumbu. Kami ingin kesalahan standar jadi set
kind="se"
dan gunakanconf
argumen untuk memberikan interval kepercayaan yang diperlukan.Perhatikan bahwa saya menangkap output dari
ordiellipse()
. Ini mengembalikan daftar, satu komponen per grup, dengan detail centroid dan elips. Anda dapat mengekstrakcenter
komponen dari masing-masing komponen ini untuk mendapatkan pada centroidPerhatikan bahwa centroid hanya untuk solusi 2d. Pilihan yang lebih umum adalah menghitung centroid sendiri. Centroid hanyalah rata-rata individual dari variabel atau dalam hal ini sumbu PCO. Ketika Anda bekerja dengan perbedaan, mereka harus tertanam dalam ruang penahbisan sehingga Anda memiliki sumbu (variabel) yang dapat Anda hitung rata-rata. Di sini skor sumbu berada di kolom dan situs di baris. Centroid grup adalah vektor rata-rata kolom untuk grup. Ada beberapa cara untuk membagi data tetapi di sini saya gunakan
aggregate()
untuk membagi skor pada 2 sumbu PCO pertama menjadi kelompok berdasarkanManagement
dan menghitung rata-rata merekaIni memberi:
yang sama dengan nilai yang disimpan dalam
stats
seperti yang diekstraksi di atas. Theaggregate()
Pendekatan generalises ke sejumlah sumbu, misalnya:Jelas, centroid pada dua sumbu PCO pertama tidak berubah ketika kami meminta lebih banyak sumbu, sehingga Anda dapat menghitung centroid di semua sumbu sekali, lalu gunakan dimensi apa pun yang Anda inginkan.
Anda dapat menambahkan centroid ke plot di atas dengan
Plot yang dihasilkan sekarang akan terlihat seperti ini
Akhirnya, vegan berisi
adonis()
danbetadisper()
fungsi-fungsi yang dirancang untuk melihat perbedaan cara dan varian data multivariat dengan cara yang sangat mirip dengan makalah / perangkat lunak Marti.betadisper()
terkait erat dengan konten kertas yang Anda kutip dan juga dapat mengembalikan centroid untuk Anda.sumber
?ordiellipse
untuk perincian tentang apa yang sedang dilakukan di sini, khususnya dalam menghitung interval kepercayaan. Apakah teori cocok dengan data adalah sesuatu yang Anda mungkin ingin melihat dengan simulasi atau resampling atau sesuatu daripada mengandalkan "teori".adonis()
dapat digunakan untuk menguji rata-rata (centroid) kelompok yang sama karena orang mungkin menggunakan ANOVA dalam kasus univariat. Tes permutasi digunakan untuk menentukan apakah data konsisten dengan hipotesis nol dari tidak ada perbedaan sentroid. Perhatikan juga bahwa perbedaan centroid dapat disebabkan oleh dispersi kelompok yang berbeda (varian).betadisper()
dapat membantu Anda menguji jika itu masalahnya, sekali lagi menggunakan tes berbasis permutasi dari jarak rata-rata titik sampel ke centroid mereka.adonis()
danbetadisp()
, saya percaya), saya hanya mencari cara yang baik untuk menampilkan data. Saya memiliki beberapa interaksi situs x musim untuk desain tindakan berulang sehingga saya ingin dapat dengan mudah menunjukkan situs mana yang menunjukkan efek musiman. Saya pikir elips ini adalah apa yang saya cari; contoh ini sangat membantu.ordiellipse()
tanpa menyematkan loop? Saya memiliki musim dan situs di data saya, dan saya ingin menunjukkan perbedaan situs di satu plot dan musim di yang lain dengan kode warna. Untuk alasan apa pun, menggunakan col = c (1,2,1,2) dll tidak berfungsi, juga tidak col = as.numeric (sen ["Site_TP"]). Apakah ada cara yang elegan untuk melakukan ini?