Human Microbial Cloud Analysis
Load data.
setwd("~/Dropbox/pb_shared_markdown/manuscript_code/particles/")
part <- read.delim("../data/particles.txt", head = TRUE)
Particle counts were taken every minute during each of the trials. They fluctuate with conditions outside of the climate chamber, so we are mostly interested in the difference between occupied and unoccupied, not the absolute values. The particle counts are also based on taking 2.83 L/min of air, so counts must be devided by that volume so we can discuss them in L/min.
part <- part[, c(2, 6, 9, 12, 15, 18, 21)]
part[, 2:7] <- part[, 2:7]/2.83
head(part)
## sample ch1dif ch2dif ch3dif ch4dif ch5dif ch6dif
## 1 outbox 8690 1475 444.9 74.20 53.71 17.314
## 2 outbox 8769 1493 476.7 90.46 55.12 18.728
## 3 outbox 8834 1470 499.6 114.84 73.14 26.502
## 4 outbox 9094 1467 475.3 103.53 62.19 25.442
## 5 outbox 8463 1317 395.1 75.62 49.47 14.134
## 6 outbox 8061 1325 375.6 70.32 38.87 9.187
Particles are broken into size classes. We are interested in those bacteria-sized or bigger.
ch4
= 3-5umch5
= 5-10umch6
= 10+umA few loops to split up the big data set into treatments.
for (i in 1:nlevels(part$sample)) {
lev <- levels(part$sample)[i]
assign(lev, part[part$sample == lev, ][, -1])
}
list.4h <- ls(pattern = ".4h.")
for (i in 1:length(list.4h)) {
print(dim(get(list.4h)))
}
## [1] 240 6
## [1] 240 6
## [1] 240 6
## [1] 240 6
## [1] 240 6
## [1] 240 6
Aggregate counts in 10 minute intervals to reduce noise. Particle counts are super freaking noisy.
agg24 <- rep(letters[1:24], each = 10)
for (i in 1:length(list.4h)) {
name <- paste("agg.", list.4h[i], sep = "")
assign(name, aggregate(get(list.4h[i]), by = list(agg24), FUN = "sum"))
}
aggs <- ls(pattern = "agg.")
for (i in 1:6) {
print(get(aggs[i]))
}
## Group.1 ch1dif ch2dif ch3dif ch4dif ch5dif ch6dif
## 1 a 47631 4787 736.7 110.95 84.45 54.42
## 2 b 47411 4709 645.9 113.43 65.37 34.28
## 3 c 47831 4737 605.3 89.75 39.58 18.37
## 4 d 47101 4584 583.0 79.15 36.75 32.16
## 5 e 46457 4500 535.7 83.04 43.11 31.10
## 6 f 46200 4525 532.2 78.45 41.34 21.91
## 7 g 45837 4512 526.1 77.39 39.58 24.03
## 8 h 44358 4407 527.2 76.68 43.82 27.56
## 9 i 42827 4253 474.2 71.73 39.58 24.38
## 10 j 41501 4190 479.9 71.02 36.04 28.62
## 11 k 40137 4100 463.3 71.38 35.34 31.80
## 12 l 37630 3888 440.6 59.72 28.27 28.27
## 13 m 35662 3757 425.8 72.08 55.12 47.70
## 14 n 33982 3592 458.7 73.85 59.72 62.90
## 15 o 32129 3460 410.6 55.83 48.41 35.34
## 16 p 30128 3327 397.2 51.94 32.16 28.27
## 17 q 29066 3259 415.5 43.11 36.40 40.99
## 18 r 28308 3202 388.0 48.76 27.92 27.56
## 19 s 27167 3128 412.7 44.88 32.86 30.74
## 20 t 26109 2969 409.9 50.53 38.16 31.10
## 21 u 25297 2942 406.0 56.18 40.28 39.58
## 22 v 24823 2945 472.4 91.17 62.54 78.09
## 23 w 24837 2920 480.6 73.85 54.77 54.06
## 24 x 24362 2898 459.7 68.55 39.93 29.68
## Group.1 ch1dif ch2dif ch3dif ch4dif ch5dif ch6dif
## 1 a 44575 5114 1117.0 206.71 135.34 76.33
## 2 b 45940 5055 1088.3 195.05 116.96 63.96
## 3 c 46099 5060 999.6 161.13 95.41 47.70
## 4 d 45747 5009 904.9 128.62 57.95 30.39
## 5 e 43929 4865 925.4 124.73 57.60 39.22
## 6 f 42210 4853 939.2 120.85 65.37 34.28
## 7 g 42438 4875 919.8 119.08 71.02 45.58
## 8 h 41318 4736 867.1 94.35 47.70 32.16
## 9 i 39919 4640 898.2 120.49 72.08 56.18
## 10 j 38127 4499 801.8 94.70 61.48 50.18
## 11 k 38322 4443 843.5 102.12 68.55 59.01
## 12 l 38004 4502 839.6 118.37 67.84 57.95
## 13 m 37077 4327 798.2 93.29 53.00 43.46
## 14 n 36905 4245 743.8 85.87 45.23 36.75
## 15 o 36171 4307 717.7 87.63 47.00 48.76
## 16 p 36572 4290 725.8 72.79 45.23 33.92
## 17 q 35016 4079 677.0 60.07 36.04 33.57
## 18 r 35257 4225 677.4 73.50 38.87 33.57
## 19 s 35557 4260 706.4 75.27 45.58 35.69
## 20 t 35841 4267 700.4 82.33 34.63 32.51
## 21 u 35895 4306 738.5 78.45 40.28 23.32
## 22 v 36190 4269 844.5 98.94 53.00 39.22
## 23 w 35482 4300 855.5 119.08 53.36 31.10
## 24 x 35507 4363 833.9 96.47 43.11 31.80
## Group.1 ch1dif ch2dif ch3dif ch4dif ch5dif ch6dif
## 1 a 35773 5658 1091.2 110.95 66.43 24.028
## 2 b 35886 5652 1043.8 94.70 48.06 11.661
## 3 c 34827 5445 981.6 94.70 37.46 13.074
## 4 d 34839 5487 963.3 86.57 35.69 7.067
## 5 e 35253 5436 966.4 82.33 40.64 14.134
## 6 f 35073 5347 919.4 85.16 33.92 12.014
## 7 g 35118 5212 909.5 81.63 32.16 9.541
## 8 h 34620 5153 854.4 77.03 30.74 17.668
## 9 i 34550 5017 843.8 79.86 39.22 17.314
## 10 j 34564 4996 828.3 66.43 32.51 7.067
## 11 k 34614 4964 832.2 61.84 39.93 16.254
## 12 l 34373 4812 797.5 63.60 26.15 10.954
## 13 m 34425 4845 801.8 67.49 30.74 12.014
## 14 n 35198 4823 830.7 68.55 27.92 14.134
## 15 o 35875 4952 825.8 60.07 36.04 8.481
## 16 p 37618 5063 811.0 77.03 38.52 10.247
## 17 q 39591 5345 887.6 126.15 61.84 22.261
## 18 r 41866 5450 980.6 140.99 67.84 11.307
## 19 s 43034 5689 959.0 131.80 57.95 18.375
## 20 t 44464 5601 933.6 114.49 48.76 10.601
## 21 u 45313 5743 921.6 107.42 43.46 10.954
## 22 v 46389 5718 861.5 93.64 38.52 7.774
## 23 w 48109 5867 868.6 80.92 29.33 7.067
## 24 x 49528 5942 894.0 92.93 41.70 8.481
## Group.1 ch1dif ch2dif ch3dif ch4dif ch5dif ch6dif
## 1 a 50310 5394 743.8 90.46 43.463 14.8410
## 2 b 51740 5401 691.9 90.46 41.343 10.2473
## 3 c 52470 5305 657.6 78.80 31.449 9.5406
## 4 d 52982 5314 600.4 57.95 24.382 5.6537
## 5 e 53107 5152 567.5 61.84 28.975 4.9470
## 6 f 52890 5219 528.3 53.71 30.035 3.8869
## 7 g 52721 5199 523.3 65.02 33.216 5.6537
## 8 h 52408 5068 517.0 67.84 34.629 8.8339
## 9 i 51013 4883 529.0 59.72 35.689 2.4735
## 10 j 49680 4838 479.9 57.60 25.442 4.9470
## 11 k 48910 4716 459.4 50.88 21.201 2.1201
## 12 l 47859 4665 436.7 45.58 15.548 2.1201
## 13 m 46520 4616 434.3 43.82 17.314 2.1201
## 14 n 45447 4539 403.2 40.64 13.428 3.8869
## 15 o 44248 4451 395.8 39.58 15.194 4.2403
## 16 p 43304 4280 391.2 26.15 14.134 1.4134
## 17 q 42232 4178 367.5 27.56 14.841 2.1201
## 18 r 40984 4039 366.1 21.20 8.481 1.4134
## 19 s 39767 3894 350.5 26.86 8.481 0.7067
## 20 t 38996 3675 373.9 24.38 10.601 1.7668
## 21 u 38710 3683 370.0 29.68 10.247 3.5336
## 22 v 38591 3640 396.5 29.68 15.901 1.7668
## 23 w 38887 3575 383.7 29.33 9.541 2.1201
## 24 x 40007 3599 398.2 26.50 9.187 1.0601
## Group.1 ch1dif ch2dif ch3dif ch4dif ch5dif ch6dif
## 1 a 41451 4616 1079.5 149.82 86.926 23.6749
## 2 b 42378 4578 963.3 154.42 75.618 15.9011
## 3 c 42688 4488 830.4 108.83 54.064 9.8940
## 4 d 42357 4484 812.4 100.71 40.283 9.8940
## 5 e 42610 4480 741.0 88.34 27.562 7.0671
## 6 f 42243 4367 714.1 77.39 23.675 3.8869
## 7 g 42445 4303 644.9 57.60 20.848 3.8869
## 8 h 42304 4229 608.1 55.48 21.555 3.5336
## 9 i 42393 4105 589.0 51.94 13.428 2.4735
## 10 j 42017 4137 560.8 47.35 14.134 1.4134
## 11 k 41654 4057 562.5 45.58 10.601 1.7668
## 12 l 40822 3970 523.0 38.52 15.194 2.4735
## 13 m 40680 3912 523.0 44.88 8.127 1.7668
## 14 n 40969 3866 530.0 35.34 13.781 0.7067
## 15 o 40699 3781 473.9 34.63 10.954 0.7067
## 16 p 40472 3740 491.9 29.33 7.067 0.7067
## 17 q 40699 3710 482.3 30.39 9.894 0.0000
## 18 r 40894 3788 468.2 23.32 8.127 1.0601
## 19 s 41061 3785 438.5 29.33 5.654 1.0601
## 20 t 41760 3863 458.7 28.27 8.127 0.7067
## 21 u 42051 3795 452.7 24.03 7.067 0.7067
## 22 v 41949 3812 437.8 27.56 8.834 0.3534
## 23 w 40960 3720 439.2 28.62 8.127 1.0601
## 24 x 39999 3631 417.7 37.10 6.714 1.0601
## Group.1 ch1dif ch2dif ch3dif ch4dif ch5dif ch6dif
## 1 a 36791 6916 1358.3 150.53 95.41 31.802
## 2 b 36892 6696 1262.5 118.02 59.72 19.435
## 3 c 37691 6676 1179.5 113.07 55.83 12.367
## 4 d 38160 6399 1130.7 115.19 47.35 10.601
## 5 e 38811 6267 1090.5 102.12 44.17 7.420
## 6 f 39887 6131 1040.3 92.93 38.52 7.774
## 7 g 39999 6065 1016.3 88.69 32.16 7.067
## 8 h 40361 6041 962.5 70.67 27.92 4.594
## 9 i 41532 5938 908.8 58.30 31.10 3.534
## 10 j 42210 5816 858.7 75.97 23.32 3.534
## 11 k 42545 5646 845.2 56.89 21.20 3.180
## 12 l 43964 5600 848.4 55.83 21.55 3.180
## 13 m 44824 5682 806.4 55.12 28.27 6.007
## 14 n 46510 5755 848.8 58.30 22.26 6.360
## 15 o 48165 5768 823.3 69.61 27.92 5.654
## 16 p 50380 6142 891.2 65.72 33.57 7.774
## 17 q 53795 6409 1014.8 134.28 72.08 18.375
## 18 r 54996 6572 1060.8 150.88 92.23 12.014
## 19 s 57277 6602 1019.4 148.76 83.04 9.894
## 20 t 59439 6733 986.2 126.15 62.54 12.367
## 21 u 61567 6968 981.3 115.90 60.07 7.774
## 22 v 63525 6933 914.8 99.29 43.82 7.420
## 23 w 66571 7094 876.0 89.40 39.93 5.300
## 24 x 70452 7261 894.7 106.71 39.93 6.714
Then create summary tables by getting a ratio of counts above unoccupied control counts.
part.summary.df <- data.frame(
mean.10 = c(
mean(agg.of.4h.s1$ch6dif / agg.uf.4h.s1$ch6dif),
mean(agg.of.4h.s2$ch6dif[-17] / agg.uf.4h.s2$ch6dif[-17]), # zero count
mean(agg.of.4h.s3$ch6dif / agg.uf.4h.s3$ch6dif)),
mean.510 = c(
mean(agg.of.4h.s1$ch5dif / agg.uf.4h.s1$ch5dif),
mean(agg.of.4h.s2$ch5dif / agg.uf.4h.s2$ch5dif),
mean(agg.of.4h.s3$ch5dif / agg.uf.4h.s3$ch5dif)),
mean.35 = c(
mean(agg.of.4h.s1$ch4dif / agg.uf.4h.s1$ch4dif),
mean(agg.of.4h.s2$ch4dif / agg.uf.4h.s2$ch4dif),
mean(agg.of.4h.s3$ch4dif / agg.uf.4h.s3$ch4dif)),
mean.13 = c(
mean(agg.of.4h.s1$ch3dif / agg.uf.4h.s1$ch3dif),
mean(agg.of.4h.s2$ch3dif / agg.uf.4h.s2$ch3dif),
mean(agg.of.4h.s3$ch3dif / agg.uf.4h.s3$ch3dif)),
median.10 = c(
median(agg.of.4h.s1$ch6dif / agg.uf.4h.s1$ch6dif),
median(agg.of.4h.s2$ch6dif[-17] / agg.uf.4h.s2$ch6dif[-17]),
median(agg.of.4h.s3$ch6dif / agg.uf.4h.s3$ch6dif)),
median.510 = c(
median(agg.of.4h.s1$ch5dif / agg.uf.4h.s1$ch5dif),
median(agg.of.4h.s2$ch5dif / agg.uf.4h.s2$ch5dif),
median(agg.of.4h.s3$ch5dif / agg.uf.4h.s3$ch5dif)),
median.35 = c(
median(agg.of.4h.s1$ch4dif / agg.uf.4h.s1$ch4dif),
median(agg.of.4h.s2$ch4dif / agg.uf.4h.s2$ch4dif),
median(agg.of.4h.s3$ch4dif / agg.uf.4h.s3$ch4dif)),
median.13 = c(
median(agg.of.4h.s1$ch3dif / agg.uf.4h.s1$ch3dif),
median(agg.of.4h.s2$ch3dif / agg.uf.4h.s2$ch3dif),
median(agg.of.4h.s3$ch3dif / agg.uf.4h.s3$ch3dif)))
row.names(part.summary.df) <- c('s1', 's2', 's3')
part.summary.df
## mean.10 mean.510 mean.35 mean.13 median.10 median.510 median.35
## s1 14.739 2.5785 1.6580 1.043 12.27 2.1090 1.4356
## s2 29.289 4.3065 2.3133 1.474 29.33 4.3202 2.2800
## s3 1.839 0.9922 0.9617 0.922 1.38 0.9004 0.9183
## median.13
## s1 1.0121
## s2 1.4612
## s3 0.9338
Add row of means.
part.summary <- rbind(part.summary.df, mean = apply(part.summary.df, 2, mean))
part.summary
## mean.10 mean.510 mean.35 mean.13 median.10 median.510 median.35
## s1 14.739 2.5785 1.6580 1.043 12.27 2.1090 1.4356
## s2 29.289 4.3065 2.3133 1.474 29.33 4.3202 2.2800
## s3 1.839 0.9922 0.9617 0.922 1.38 0.9004 0.9183
## mean 15.289 2.6257 1.6443 1.146 14.33 2.4432 1.5447
## median.13
## s1 1.0121
## s2 1.4612
## s3 0.9338
## mean 1.1357
Keep a text copy.
write.table(round(part.summary, digits = 3), "../../tables/particleSummary.txt",
sep = "\t", quote = FALSE)