Menguji frekuensi berpasangan untuk independensi

8

Saya harap ini tidak terlalu mendasar atau berlebihan. Saya sudah mencari-cari panduan, tetapi sejauh ini saya masih tidak yakin bagaimana untuk melanjutkan.

Data saya terdiri dari jumlah struktur tertentu yang digunakan dalam percakapan antara pasangan lawan bicara. Hipotesis yang ingin saya uji adalah sebagai berikut: lebih sering menggunakan struktur ini oleh satu pembicara akan cenderung meningkatkan frekuensi struktur oleh pembicara lain (yaitu, ini mungkin bukti efek priming).

Jadi saya hanya memiliki dua vektor, jumlah untuk penutur A dan jumlah untuk penutur B adalah kolom, dan jika mereka berbaris setiap baris mewakili percakapan tertentu, seperti ini:

AB
0 1
0 2
1 0
3 1
0 2
2 0
2 1

Ada sekitar 420 percakapan (baris). Ada banyak nol dalam data ini.

Apa cara terbaik untuk menganalisis data ini? Saya menggunakan R, jika itu membuat perbedaan.

Berikut adalah plot frekuensi (jumlah). Sumbu x adalah jumlah penggunaan oleh penutur A, jumlah sumbu penggunaan y oleh penutur B. Perbedaan antara penutur hanya berarti bahwa penutur A berbicara terlebih dahulu, dan tidak ada alasan khusus mengapa mereka melakukannya. Kalau tidak, perbedaan antara pembicara A dan pembicara B pada dasarnya tidak ada artinya:

Valid XHTML http://phonematic.com/convplot.jpg

Dan ini adalah frekuensi relatif terhadap jumlah kalimat yang diucapkan oleh masing-masing pembicara dalam setiap percakapan. :

Valid XHTML http://phonematic.com/rs_plot.jpg

(Saya harus menyebutkan bahwa saya telah membuang percakapan tanpa hit sama sekali, yaitu {0,0}.)

Alan H.
sumber
Apakah setiap baris dihitung dari struktur yang berbeda untuk percakapan yang sama, atau hitungan dari struktur yang sama untuk periode waktu yang berbeda?
RockScience
Setiap baris adalah jumlah total penggunaan dari struktur yang sama oleh dua orang yang berbeda yang saling berbicara. Jadi, misalnya, jika saya menghitung kalimat pasif, maka angka di kolom A akan menjadi jumlah kalimat pasif yang digunakan oleh penutur A, dan angka di kolom B jumlah kalimat pasif yang digunakan oleh penutur B. Jadi setiap baris adalah percakapan yang berbeda. Setiap percakapan memiliki tepat dua peserta.
Alan H.
Saya juga memiliki data yang sama dihitung relatif terhadap jumlah kalimat yang diucapkan oleh masing-masing pembicara dalam setiap percakapan, jika itu membuat perbedaan.
Alan H.
Maaf jika saya agak lambat, tetapi saya masih kesulitan memahami struktur data Anda. Apakah hanya ada 2 pembicara, dengan 420 pengukuran berulang yang dikumpulkan pada masing-masing (maksud saya satu baris = satu jenis percakapan, tetapi hasil yang sama dicatat, misalnya Tidak. Kalimat pasif)? Saya menanyakan ini karena Anda memiliki beberapa jenis yang cocok atau berpasangan (antara subjek A dan B), tetapi dalam kasus terakhir ini, Anda juga harus berurusan dengan pengukuran berulang, dan ini membuat model marginal untuk pasangan yang cocok kurang relevan.
chl
Tidak, ini semua adalah pengeras suara yang berbeda. Data ini diambil dari kumpulan percakapan telepon yang direkam. Jadi pembicara A dalam percakapan 1 bukan orang yang sama dengan pembicara A dalam percakapan 2.
Alan H.

Jawaban:

10

Model log-linear mungkin menjadi pilihan lain untuk dilihat, jika Anda ingin mempelajari struktur data dua arah Anda.

Jika Anda berasumsi bahwa dua sampel cocok (yaitu, ada beberapa jenis ketergantungan antara dua rangkaian lokasi) dan Anda mempertimbangkan bahwa data sebenarnya jumlah yang dapat dianggap sebagai skor atau respons yang dipesan (seperti yang disarankan oleh @caracal ), maka Anda juga dapat melihat model marginal untuk pasangan yang cocok, yang biasanya melibatkan analisis tabel kontingensi kuadrat. Mungkin belum tentu Anda berakhir dengan Tabel persegi seperti itu, tetapi kami juga dapat memutuskan batas atas untuk jumlah, misalnya kalimat pasif. Bagaimanapun, model untuk pasangan yang cocok dijelaskan dengan baik di Bab 10 dari Agresti, Analisis Data Kategorikal ; model yang relevan untuk kategori ordinal dalam tabel kuadrat sedang menguji kuasi-simetri(perbedaan dalam pengaruh kategori dari satu kasus ke yang lain mengikuti tren linear dalam skor kategori), simetri bersyarat ( atau , ), dan asosiasi kuasi-seragam ( asosiasi linier demi linier dari diagonal utama, yang dalam kasus skor interval-sama berarti asosiasi lokal seragam). Ordinal quasi-symmetry (OQS) adalah kasus khusus dari model logit linier, dan dapat dibandingkan dengan model yang lebih sederhana di mana hanya homogenitas marginal berlaku dengan uji LR, karena ordinal kuasi-simetri + homogenitas marginal simetri.πab<πabπab>πaba,b=

Mengikuti notasi Agresti (hlm. 429), kami menganggap memesan skor untuk variabel (dalam baris) dan variabel (dalam kolom); atau menunjukkan setiap baris atau kolom. Model OQS dibaca sebagai model log-linear berikut:u1uIXYab

logμab=λ+λa+λb+βub+λab

di mana untuk semua . Dibandingkan dengan model QS biasa untuk data nominal yaitu , di mana akan berarti independensi antara kedua variabel , dalam model OQS kami memaksakan (karenanya memperkenalkan gagasan tren linear). Representasi logit yang setara adalah , untuk .λab=λbaa<blogμab=λ+λaX+λbY+λabλab=0λbYλbX=βublog(πab/πba)=β(ubua)ab

Jika , maka kita memiliki simetri sebagai kasus khusus dari model ini. Jika , maka kami memiliki stok yang dipesan secara stokastik, yaitu berarti rata-rata kolom lebih tinggi dibandingkan dengan rata-rata baris (dan semakin besar , semakin besar perbedaan antara dua distribusi probabilitas gabungan dan adalah, yang akan tercermin dalam perbedaan antara distribusi marginal baris dan kolom). Tes sesuai dengan tes homogenitas marginal. Interpretasi dari estimasi adalah langsung: estimasi probabilitas bahwa skor pada variabel adalahβ=0β0β>0|β|πabπbaβ=0βXx unit lebih positif daripada skor pada adalah dikalikan probabilitas terbalik. Dalam kasus khusus Anda, itu berarti memungkinkan untuk mengukur pengaruh yang diberikan oleh satu penutur tertentu.Yexp(β^x)β^

Sebagai catatan, semua kode R disediakan oleh Laura Thompson dalam Manual S- nya untuk Mendampingi Analisis Data Kategorikal Agresti .

Selanjutnya, saya memberikan beberapa contoh kode R sehingga Anda dapat memainkannya dengan data Anda sendiri. Jadi, mari kita coba menghasilkan beberapa data terlebih dahulu:

set.seed(56)
d <- as.data.frame(replicate(2, rpois(420, 1.5)))
colnames(d) <- paste("S", 1:2, sep="")
d.tab <- table(d$S1, d$S2, dnn=names(d)) # or xtabs(~S1+S2, d)
library(vcdExtra)
structable(~S1+S2, data=d)
# library(ggplot2)
# ggfluctuation(d.tab, type="color") + labs(x="S1", y="S2") + theme_bw()

Secara visual, klasifikasi silang terlihat seperti ini:

   S2  0  1  2  3  4  5  6
S1                        
0     17 35 31  8  7  3  0
1     41 41 30 23  7  2  0
2     19 43 18 18  5  0  1
3     11 21  9 15  2  1  0
4      0  3  4  1  0  0  0
5      1  0  0  2  0  0  0
6      0  0  0  1  0  0  0

Sekarang, kita dapat menyesuaikan model OQS. Tidak seperti Laura Thompson yang menggunakan glm()fungsi dasar dan matriks desain khusus untuk simetri, kita dapat mengandalkan paket gnm ; namun, kita perlu menambahkan vektor untuk skor numerik untuk memperkirakan dalam model di atas.β

library(gnm)
d.long <- data.frame(counts=c(d.tab), S1=gl(7,1,7*7,labels=0:6),
                     S2=gl(7,7,7*7,labels=0:6))
d.long$scores <- rep(0:6, each=7)
summary(mod.oqs <- gnm(counts~scores+Symm(S1,S2), data=d.long, 
                       family=poisson))
anova(mod.oqs)

Di sini, kita punya β^=0.123, dan dengan demikian probabilitas bahwa Speaker B mendapat skor 4 ketika Speaker A mendapat skor 3 exp(0.123)=1.13 kali probabilitas bahwa Speaker B memiliki skor 3 sedangkan Speaker A memiliki skor 4.

Baru-baru ini saya menemukan paket catspec R yang tampaknya menawarkan fasilitas serupa, tetapi saya tidak mencobanya. Ada tutorial yang bagus di UseR! 2009 tentang semua hal ini: Pengantar Generalized Nonlinear Models dalam R , tetapi lihat juga sketsa yang menyertainya, Generalized nonlinear models in R: Tinjauan umum paket gnm .

Jika Anda ingin memahami ide dengan data nyata, ada banyak contoh dengan rangkaian data nyata dalam paket vcdExtra dari Michael Friendly. Tentang model OQS, Agresti menggunakan data tentang Seks Pranikah dan Seks Luar Nikah (Tabel 10.5, p. 421). Hasilnya dibahas dalam §10.4.7 (p. 430), danβ^diperkirakan -2,86. Kode di bawah ini memungkinkan (sebagian diambil dari buku teks Thompson) untuk mereproduksi hasil ini. Kita perlu melepaskan level faktor untuk menetapkan baseline yang sama dari Agresti.

table.10.5 <- data.frame(expand.grid(PreSex=factor(1:4),
                                     ExSex=factor(1:4)),
                         counts=c(144,33,84,126,2,4,14,29,0,2,6,25,0,0,1,5))
table.10.5$scores <- rep(1:4,each=4)
summary(mod.oqs <- gnm(counts~scores+Symm(PreSex,ExSex), data=table.10.5, 
                       family=poisson)) # beta = -2.857
anova(mod.oqs) # G^2(5)=2.10
chl
sumber
Wow, ini terlihat sangat berguna. Saya akan mendapatkan salinan buku ini sesegera mungkin, karena semua orang sepertinya mengutipnya. Sementara itu, hanya pertanyaan naif: dapatkah model ini menangani sejumlah efek acak yang sewenang-wenang? Saya pikir saya perlu 3 dalam model saya.
Alan H.
@Alan Perlu diketahui bahwa kami (@caracal dan saya) tidak mengutip buku yang sama. CDA adalah yang lebih lengkap, tetapi buku teks Laura Thompson sudah mencakup sekitar 10 halaman ringkasan untuk setiap bab. Lihatlah buku pelajarannya terlebih dahulu. ICDA tersedia di buku Google saya pikir.
chl
Mengetik dalam definisi simetri bersyarat? πab<πba atau πab>πba, a<b
Scortchi
2

Anda tampaknya telah memesan data kategorikal, oleh karena itu saya menyarankan tes linier demi linier seperti yang dijelaskan oleh Agresti (2007, p229 ff). Fungsi lbl_test()paket coinmengimplementasikannya dalam R.

Agresti, A. (2007). Pengantar Analisis Data Kategorikal. 2nd Ed. Hoboken, New Jersey: John Wiley & Sons. Hoboken, NJ: Wiley.

caracal
sumber
0

Saya mungkin akan mulai dengan analisis korelasi peringkat .
Masalahnya adalah Anda mungkin memiliki korelasi yang sangat rendah karena efek yang Anda coba tangkap kecil.

Koefisien korelasi Kendall dan Spearman diimplementasikan dalam R in

cor(x=A, y=B, method = "spearman")  
cor(x=A, y=B, method = "kendall")
RockScience
sumber
1
Keduanya menganggap variabel kontinu, sehingga probabilitas ikatan dalam sampel adalah 0. Dengan data yang diberikan, akan ada banyak ikatan.
caracal
Saya sudah mencoba ini. Tetapi dengan begitu banyak 0s saya tidak yakin apa yang harus dilakukan. Saya mencoba mengecualikan setiap percakapan di mana salah satu pembicara tidak menggunakan konstruksi ini (yaitu, titik data akan jatuh di sepanjang kedua sumbu), tetapi korelasi Spearman yang dihasilkan tidak signifikan (dan koefisiennya sangat kecil) ..
Alan H.