Boxplot sehubungan dengan dua faktor menggunakan ggplot2 di R

13

Saya sangat baru untuk R dan paket apa pun di R. Saya melihat dokumentasi ggplot2 tetapi tidak dapat menemukan ini. Saya ingin plot kotak variabel boxthissehubungan dengan dua faktor f1dan f2. Itu anggap keduanya f1dan f2merupakan variabel faktor dan masing-masing dari mereka mengambil dua nilai dan boxthismerupakan variabel kontinu. Saya ingin mendapatkan 4 boxplots pada grafik, masing-masing sesuai dengan satu kombinasi dari kombinasi yang mungkin f1dan f2dapat diambil. Saya pikir menggunakan fungsionalitas dasar dalam R, ini bisa dilakukan oleh

> boxplot(boxthis ~ f1 * f2 , data = datasetname) 

Terima kasih sebelumnya atas bantuannya.

Curious2learn
sumber
Harap berikan data sampel, untuk mendapatkan jawaban yang tepat.
mpiktas
2
Pertanyaan ini hampir pasti akan lebih cocok untuk stackoverflow.com, karena ada sedikit statistik khusus di sini.
richiemorrisroe

Jawaban:

23

Saya dapat memikirkan dua cara untuk mencapai ini:

1. Buat semua kombinasi dari f1dan di f2luar ggplot-fungsi

library(ggplot2)

df <- data.frame(f1=factor(rbinom(100, 1, 0.45), label=c("m","w")), 
                 f2=factor(rbinom(100, 1, 0.45), label=c("young","old")),
                 boxthis=rnorm(100))

df$f1f2 <- interaction(df$f1, df$f2)

ggplot(aes(y = boxthis, x = f1f2), data = df) + geom_boxplot()

masukkan deskripsi gambar di sini

2. gunakan warna / isi / dll.

ggplot(aes(y = boxthis, x = f2, fill = f1), data = df) + geom_boxplot()

masukkan deskripsi gambar di sini

Bernd Weiss
sumber
4
(+1) Saya suka penggunaan interaction() . Dengan catatan, kita dapat menentukan geom_boxplot(position = position_dodge(width = .9))untuk menambahkan ruang ekstra di antara plot-plot kotak.
chl
1
Anda juga dapat menggunakan dodgeargumen dalam ggplotfungsi -ggplot(aes(y = boxthis, x = f2, fill = f1, dodge=f1), data = df) + geom_boxplot()
Maciej
0

Inilah cara lain:

ggplot(datasetname) + boxplot(aes(x=as.factor(f1),y=boxthis)) + facet_wrap(~as.factor(f2), nrow=5)

Memberikan sesuatu seperti berikut:

Plot kotak faceted

Richard
sumber