cooties

cooties

When did i get cooties?

supposedly 70% of america has cooties - aka oral herpes aka HSV-1.

I know i do. when did i get it? who poisoned me >:(

Estimate for Teenagers with Oral Herpes (Ages 13-18)

Ok so the CDC’s National Health and Nutrition Examination Survey suggest that 50-80% of the population carries HSV-1 (oral herpes) by adulthood. The WHO says the same thing. For teenagers (13-18), it’s estimated that 30-40% might already carry HSV-1 due to high transmissibility through childhood exposure (kissing family members, sharing utensils, etc.).

CDC Graph
Figure uno: Age-adjusted prevalence of herpes simplex virus type 1 among persons aged 14–49, by age group, sex, and race and Hispanic origin: United States, 2015–2016

For the general case calculation, we assume 40% prevalence among teenagers.


how many kisses does it take to get cooties? a Statistical Combinatronics approach.

Steps:

  1. Assume Prevalence Rate (P):
    - Probability someone has oral herpes = P = 0.4 (40%).

  2. Assume Independent Events:
    - Each kiss is an independent event (i.e., transmission is independent of previous encounters).

  3. Failure to Transmit in One Encounter (q):
    - The probability of kissing someone who doesn’t have HSV-1:
    $$Q = 1 - P = 1 - 0.4 = 0.6$$
    - Meaning, there’s a 60% chance a given person is herpes-free.

  4. Multiple Kiss Probability:
    - For multiple kisses, assuming independent events, the probability of remaining uninfected after n kisses is:
    $$n = \prod_{i=1}^{n} (1 - \frac{P_i}{100})$$
    where P_i is the prevalence at the age when each kiss occurred.

  • The cumulative probability of contracting HSV-1 after $n$ kisses is:
    $$1 - Q_n$$

  • In this case, the probability of kissing n people and avoiding herpes is:
    $$Q^n = 0.6^n$$

  • We calculate n where this probability becomes very small (close to 0).
  1. Find n Where Transmission is Practically Guaranteed:
    - To “practically guarantee” transmission, let’s aim for a 95% chance of having been exposed.
    - This means solving for n in the equation:
    $$1 - 0.6^n = 0.95$$
    $$0.6^n = 0.05$$
    - Taking the natural log of both sides:
    $$n \cdot \ln(0.6) = \ln(0.05)$$
    $$n = \frac{\ln(0.05)}{\ln(0.6)}$$
    - Approximating:
    $$n = \frac{-2.9957}{-0.5108} \approx 5.86$$

So, if you’re a typical teenager, you’d need to kiss ~6 people (on average) to have a 95% chance of being exposed to HSV-1, assuming a 40% prevalence among teens.

If prevalence increases (e.g., in adulthood where it’s 50-80%), the number of kisses needed would drop:
- 50% prevalence → ~4 kisses.
- 80% prevalence → ~2 kisses.

which kiss will give you cooties?

Figure dos: general population cumulative likelyhood for when you’d cooties


But we can do better. I want to know when I got cooties.

we can calculate this using the below table:

Age Lower Bound (%) Upper Bound (%)
12 15.00 20.00
14 21.44 33.07
17 21.44 33.07
18 21.44 33.07
19 21.44 33.07

Table 1: Age-Based HSV-1 Prevalence (Males in the U.S.) Source: https://www.cdc.gov/nchs/data/databriefs/db304_table.pdf#page=1

and my kissing history:

# Kiss Age Lower Bound (%) Upper Bound (%) Cumulative Probability (Lower) Cumulative Probability (Upper)
1 12 15.00 20.00 0.1500 0.2000
2 14 21.44 33.07 0.3320 0.4646
3 17 21.44 33.07 0.4750 0.6416
4 18 21.44 33.07 0.5876 0.7616
5 18 21.44 33.07 0.6757 0.8419
6 19 21.44 33.07 0.7445 0.8957
7 19 21.44 33.07 0.7982 0.9305
8 19 21.44 33.07 0.8403 0.9533
9 19 21.44 33.07 0.8734 0.9686
10 19 21.44 33.07 0.8993 0.9791

Table 2: Accumulated Probability of Infection Source: me lol

which kiss gave me cooties?

Figure tres: Upper and Lower bound cumulative likelyhood for when i got cooties

it looks like, on the conservative case, I got cooties on my 12th kiss, and in the more aggressive take I got it on the 8th kiss. With 95% certainty. I know who those girls are, and I know then, one of them gave me cooties >:(


Appendix

Recreate it yourself

import numpy as np
import matplotlib.pyplot as plt

# Given age-based HSV-1 prevalence rates for males in the U.S.
age_prevalence_bounds = {
    14: (21.44, 33.07),  # Range for ages 14-19
    17: (21.44, 33.07),
    18: (21.44, 33.07),
    19: (21.44, 33.07),
}

# Ages at which the I kissed someone
kiss_ages = [12, 14, 17, 18, 18, 19, 19, 19, 19, 19]

# Assume age 12 follows a lower estimated prevalence rate (~15%)
age_prevalence_bounds[12] = (15, 20)

# Compute probability accumulation
prob_no_hsv_lower = 1.0
prob_no_hsv_upper = 1.0

# Store cumulative probability for plotting
kiss_count = np.arange(1, len(kiss_ages) + 1)
prob_hsv_lower = []
prob_hsv_upper = []

for age in kiss_ages:
    lower_p, upper_p = age_prevalence_bounds.get(age, (21.44, 33.07))
    prob_no_hsv_lower *= (1 - lower_p / 100)
    prob_no_hsv_upper *= (1 - upper_p / 100)
    prob_hsv_lower.append(1 - prob_no_hsv_lower)
    prob_hsv_upper.append(1 - prob_no_hsv_upper)

# Plot probability accumulation over kisses
plt.figure(figsize=(10, 6))
plt.plot(kiss_count, prob_hsv_lower, marker='o', linestyle='-', label="Lower Bound (21.44%)")
plt.plot(kiss_count, prob_hsv_upper, marker='o', linestyle='-', label="Upper Bound (33.07%)")
plt.xlabel("Nth Kiss", fontsize=14)
plt.ylabel("Cumulative Probability of HSV-1 Infection", fontsize=14)
plt.title("which kiss gave me cooties?", fontsize=16)
plt.legend()
plt.grid(alpha=0.3)
plt.xticks(kiss_count)
plt.yticks(np.linspace(0, 1, 11))
plt.show()

note: this obviously simplified things. you can get HSV1 from non kissing contact, eg: sharing utensils, drinking from the same cup, using the same chapstick, touching an active cold sore, sharing face towels, using the same toothbrush, etc.

note: no hard feelings its all just fun. but i guess im a walking virus now…