Apa cara yang baik untuk merencanakan distribusi dari waktu ke waktu menggunakan R?


8

Saya memiliki ~ 400 orang dan> 10rb timepoint masing-masing (hasil simulasi) Saya ingin dapat memantau karena mereka berubah seiring berjalannya waktu. Memplot semua individu terlalu berantakan, merencanakan mean -sd, min / max, atau kuantil adalah informasi yang terlalu sedikit untuk seleraku. Saya bertanya-tanya apa yang orang lain buat untuk memvisualisasikan tipe data ini. Jika ada lebih sedikit titik data saya akan menggunakan beanplots untuk setiap titik waktu, tetapi itu tidak akan bekerja untuk titik waktu begitu banyak.


Apakah Anda ingin memeriksa tindakan berulang (distribusi nilai dalam kelompok tingkat orang) atau hasil panel (fungsi variabel respons dalam diri seseorang dari waktu ke waktu) atau apakah Anda hanya memeriksa hasil sebagai fungsi waktu? Plot kacang (atau plot biola) mengabaikan pengelompokan, tetapi dapat digunakan untuk memvisualisasikan pengamatan yang terpisah waktu. Sudahkah Anda menganggap smoothers populer seperti LOESS atau smoothing splines?
AdamO

@ AdamO Saya hanya ingin melihat distribusi hasil dari waktu ke waktu. Saya tertarik pada bagaimana distribusi statistik tingkat individu ("tingkat aktivitas") berubah sebagai cara mengawasi jaringan individu. Masing-masing individu berinteraksi dengan subset dari yang lain, ini juga berubah seiring waktu.
Livid

Smoothers mampu melakukan itu. Ini bukan plot spageti yang menunjukkan statistik individual, tetapi Anda dapat memvisualisasikan tren rata-rata dari waktu ke waktu.
AdamO

@ AdamO Saya tidak mengerti saran untuk menghaluskan karena saya cukup memplot rata-rata di setiap catatan waktu untuk melihatnya.
Livid

1
@ Glen_b Saya hanya akan menghitung kuantil di setiap titik waktu dan membuat deret waktu dari mereka daripada menggunakan boxplots, saya berharap untuk melihat distribusi yang rumit sekalipun.
Livid

Jawaban:


1

Saya akan menggunakan yang lebih halus, seperti:

geom_smooth(method='loess')

atau saya akan melakukan subsampel data dan plot hanya setiap 5 individu, dan setiap 10 langkah waktu (misalnya).

library(ggplot2)    
# Data looks like:
#   Subject   Timestep  Y
#   1         1         0.5
#   1         2         0.6    
#   1         3         0.6
#   1         4         0.7
temp=subset(data, ((as.numeric(subject)%%5)==0) & ((as.numeric(Timestep)%%10)==0))
qplot(Timestep,Y,data=temp)

atau keduanya.


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.