मैं एक आंकड़ा बनाने की कोशिश कर रहा हूं जो वायरल प्रतियां और जीनोम कवरेज (जीसीसी) के बीच के संबंध को दर्शाता है। यह मेरा डेटा जैसा दिखता है:
सबसे पहले, मैंने सिर्फ एक रेखीय प्रतिगमन की साजिश रची, लेकिन मेरे पर्यवेक्षकों ने मुझे बताया कि वह गलत था, और एक सिग्मोइडल वक्र की कोशिश करने के लिए। इसलिए मैंने geom_smooth का उपयोग करके ऐसा किया:
library(scales)
ggplot(scatter_plot_new, aes(x = Copies_per_uL, y = Genome_cov, colour = Virus)) +
geom_point() +
scale_x_continuous(trans = log10_trans(), breaks = trans_breaks("log10", function(x) 10^x), labels = trans_format("log10", math_format(10^.x))) +
geom_smooth(method = "gam", formula = y ~ s(x), se = FALSE, size = 1) +
theme_bw() +
theme(legend.position = 'top', legend.text = element_text(size = 10), legend.title = element_text(size = 12), axis.text = element_text(size = 10), axis.title = element_text(size=12), axis.title.y = element_text(margin = margin (r = 10)), axis.title.x = element_text(margin = margin(t = 10))) +
labs(x = "Virus copies/µL", y = "GCC (%)") +
scale_y_continuous(breaks=c(25,50,75,100))
हालांकि, मेरे पर्यवेक्षकों का कहना है कि यह गलत भी है क्योंकि घटता यह दिखता है कि जीसीसी 100% से अधिक हो सकता है, जो यह नहीं कर सकता।
मेरा सवाल है: वायरस कॉपी और जीसीसी के बीच संबंध दिखाने का सबसे अच्छा तरीका क्या है? मैं यह स्पष्ट करना चाहता हूं कि ए) कम वायरस प्रतियां = कम जीसीसी, और वह बी) वायरस की एक निश्चित मात्रा के बाद जीसीसी पठारों की नकल करता है।
मैंने बहुत सारे अलग-अलग तरीकों पर शोध किया है - GAM, LOESS, लॉजिस्टिक, पीसवाइज़ - लेकिन मैं नहीं जानता कि कैसे बताऊं कि मेरे डेटा के लिए सबसे अच्छा तरीका क्या है।
संपादित करें: यह डेटा है:
>print(scatter_plot_new)
Subsample Virus Genome_cov Copies_per_uL
1 S1.1_RRAV RRAV 100 92500
2 S1.2_RRAV RRAV 100 95900
3 S1.3_RRAV RRAV 100 92900
4 S2.1_RRAV RRAV 100 4049.54
5 S2.2_RRAV RRAV 96.9935 3809
6 S2.3_RRAV RRAV 94.5054 3695.06
7 S3.1_RRAV RRAV 3.7235 86.37
8 S3.2_RRAV RRAV 11.8186 84.2
9 S3.3_RRAV RRAV 11.0929 95.2
10 S4.1_RRAV RRAV 0 2.12
11 S4.2_RRAV RRAV 5.0799 2.71
12 S4.3_RRAV RRAV 0 2.39
13 S5.1_RRAV RRAV 4.9503 0.16
14 S5.2_RRAV RRAV 0 0.08
15 S5.3_RRAV RRAV 4.4147 0.08
16 S1.1_UMAV UMAV 5.7666 1.38
17 S1.2_UMAV UMAV 26.0379 1.72
18 S1.3_UMAV UMAV 7.4128 2.52
19 S2.1_UMAV UMAV 21.172 31.06
20 S2.2_UMAV UMAV 16.1663 29.87
21 S2.3_UMAV UMAV 9.121 32.82
22 S3.1_UMAV UMAV 92.903 627.24
23 S3.2_UMAV UMAV 83.0314 615.36
24 S3.3_UMAV UMAV 90.3458 632.67
25 S4.1_UMAV UMAV 98.6696 11180
26 S4.2_UMAV UMAV 98.8405 12720
27 S4.3_UMAV UMAV 98.7939 8680
28 S5.1_UMAV UMAV 98.6489 318200
29 S5.2_UMAV UMAV 99.1303 346100
30 S5.3_UMAV UMAV 98.8767 345100
method.args=list(family=quasibinomial))
तर्कों को जोड़ने का प्रयास geom_smooth()
करें।
se=FALSE
। हमेशा लोगों को यह दिखाने के लिए अच्छा है कि वास्तव में अनिश्चितता कितनी बड़ी है ...