Paired means:
First, we read in the data:
friday_13th <- read.csv("friday_13th.csv", header = TRUE)
How can we add a column for the difference between the two dates?
friday_13th$difference <- friday_13th$X6th - friday_13th$X13th
T-test, using 0 as the null value:
t.test(friday_13th$difference, mu = 0)
T-test, using the paired logic more directly:
t.test(friday_13th$X6th, friday_13th$X13th, paired = TRUE)
Next example, difference between two means:
First, read in the two data frames:
one_carat_30 <- read.csv("one_carat.csv", header = TRUE)
point_99_carat <- read.csv("point99_carat.csv", header = TRUE)
First we need to make a column of price/carat
one_carat_30$pricepercarat <- one_carat_30$price/100
point_99_carat$pricepercarat <- point_99_carat$price/99
Next, lets visualize our data:
boxplot(one_carat_30$pricepercarat, point_99_carat$pricepercarat, names = c('one carat', '.99 carat'), ylab = "Price per Carat")

hist(one_carat_30$pricepercarat)

hist(point_99_carat$pricepercarat)

Additionally, we should check for equal variance:
var.test(one_carat_30$pricepercarat, point_99_carat$pricepercarat)
Then we can conduct the t.test:
t.test(point_99_carat$pricepercarat, one_carat_30$pricepercarat, alternative = "less", var.equal = TRUE)
A less conservative test is the welch test, which always assumes unequal variances and thus calculates the SE differently:
t.test(point_99_carat$pricepercarat, one_carat_30$pricepercarat, alternative = "less", var.equal = FALSE)
As you can see, we have different p-values here and come to different conclusions. As a statistician, you should chose one test and only conduct that one. Never conduct more than one test on the same data.
Here is an example that we did not do in class, but how you can do the same tests if all the data is in a single data frame and you are comparing by a categorical variable:
combined_diamond <- rbind(one_carat_30, point_99_carat)
combined_diamond$carat <- as.factor(combined_diamond$carat) #this ensures that R recognizes the carat variable as categorical and not numeric.
t.test(pricepercarat ~ carat, data = combined_diamond, alternative = "less", var.equal = TRUE)
write.table(combined_diamond, "combined_diamond.csv")
LS0tCnRpdGxlOiAiUiBJbi1jbGFzcyB0LXRlc3QgZm9yIHR3byBtZWFucyBwYWlyZWQvdW5wYWlyZWQiCm91dHB1dDogaHRtbF9ub3RlYm9vawotLS0KClBhaXJlZCBtZWFuczoKCkZpcnN0LCB3ZSByZWFkIGluIHRoZSBkYXRhOgoKYGBge3J9CmZyaWRheV8xM3RoIDwtIHJlYWQuY3N2KCJmcmlkYXlfMTN0aC5jc3YiLCBoZWFkZXIgPSBUUlVFKQpgYGAKCgoKSG93IGNhbiB3ZSBhZGQgYSBjb2x1bW4gZm9yIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIHR3byBkYXRlcz8KCmBgYHtyfQpmcmlkYXlfMTN0aCRkaWZmZXJlbmNlIDwtIGZyaWRheV8xM3RoJFg2dGggLSBmcmlkYXlfMTN0aCRYMTN0aApgYGAKCgpULXRlc3QsIHVzaW5nIDAgYXMgdGhlIG51bGwgdmFsdWU6CmBgYHtyfQp0LnRlc3QoZnJpZGF5XzEzdGgkZGlmZmVyZW5jZSwgbXUgPSAwKQpgYGAKClQtdGVzdCwgdXNpbmcgdGhlIHBhaXJlZCBsb2dpYyBtb3JlIGRpcmVjdGx5OgpgYGB7cn0KdC50ZXN0KGZyaWRheV8xM3RoJFg2dGgsIGZyaWRheV8xM3RoJFgxM3RoLCBwYWlyZWQgPSBUUlVFKQpgYGAKCgpOZXh0IGV4YW1wbGUsIGRpZmZlcmVuY2UgYmV0d2VlbiB0d28gbWVhbnM6CgpGaXJzdCwgcmVhZCBpbiB0aGUgdHdvIGRhdGEgZnJhbWVzOgpgYGB7cn0Kb25lX2NhcmF0XzMwIDwtIHJlYWQuY3N2KCJvbmVfY2FyYXQuY3N2IiwgaGVhZGVyID0gVFJVRSkKcG9pbnRfOTlfY2FyYXQgPC0gcmVhZC5jc3YoInBvaW50OTlfY2FyYXQuY3N2IiwgaGVhZGVyID0gVFJVRSkKYGBgCgoKRmlyc3Qgd2UgbmVlZCB0byBtYWtlIGEgY29sdW1uIG9mIHByaWNlL2NhcmF0CgpgYGB7cn0Kb25lX2NhcmF0XzMwJHByaWNlcGVyY2FyYXQgPC0gb25lX2NhcmF0XzMwJHByaWNlLzEwMApwb2ludF85OV9jYXJhdCRwcmljZXBlcmNhcmF0IDwtIHBvaW50Xzk5X2NhcmF0JHByaWNlLzk5CmBgYAoKTmV4dCwgbGV0cyB2aXN1YWxpemUgb3VyIGRhdGE6CgpgYGB7cn0KYm94cGxvdChvbmVfY2FyYXRfMzAkcHJpY2VwZXJjYXJhdCwgcG9pbnRfOTlfY2FyYXQkcHJpY2VwZXJjYXJhdCwgbmFtZXMgPSBjKCdvbmUgY2FyYXQnLCAnLjk5IGNhcmF0JyksIHlsYWIgPSAiUHJpY2UgcGVyIENhcmF0IikKaGlzdChvbmVfY2FyYXRfMzAkcHJpY2VwZXJjYXJhdCkKaGlzdChwb2ludF85OV9jYXJhdCRwcmljZXBlcmNhcmF0KQpgYGAKCgpBZGRpdGlvbmFsbHksIHdlIHNob3VsZCBjaGVjayBmb3IgZXF1YWwgdmFyaWFuY2U6CmBgYHtyfQp2YXIudGVzdChvbmVfY2FyYXRfMzAkcHJpY2VwZXJjYXJhdCwgcG9pbnRfOTlfY2FyYXQkcHJpY2VwZXJjYXJhdCkKYGBgCgoKClRoZW4gd2UgY2FuIGNvbmR1Y3QgdGhlIHQudGVzdDoKCmBgYHtyfQp0LnRlc3QocG9pbnRfOTlfY2FyYXQkcHJpY2VwZXJjYXJhdCwgb25lX2NhcmF0XzMwJHByaWNlcGVyY2FyYXQsIGFsdGVybmF0aXZlID0gImxlc3MiLCB2YXIuZXF1YWwgPSBUUlVFKQpgYGAKCkEgbGVzcyBjb25zZXJ2YXRpdmUgdGVzdCBpcyB0aGUgd2VsY2ggdGVzdCwgd2hpY2ggYWx3YXlzIGFzc3VtZXMgdW5lcXVhbCB2YXJpYW5jZXMgYW5kIHRodXMgY2FsY3VsYXRlcyB0aGUgU0UgZGlmZmVyZW50bHk6CgpgYGB7cn0KdC50ZXN0KHBvaW50Xzk5X2NhcmF0JHByaWNlcGVyY2FyYXQsIG9uZV9jYXJhdF8zMCRwcmljZXBlcmNhcmF0LCBhbHRlcm5hdGl2ZSA9ICJsZXNzIiwgdmFyLmVxdWFsID0gRkFMU0UpCmBgYAoKQXMgeW91IGNhbiBzZWUsIHdlIGhhdmUgZGlmZmVyZW50IHAtdmFsdWVzIGhlcmUgYW5kIGNvbWUgdG8gZGlmZmVyZW50IGNvbmNsdXNpb25zLiBBcyBhIHN0YXRpc3RpY2lhbiwgeW91IHNob3VsZCBjaG9zZSBvbmUgdGVzdCBhbmQgb25seSBjb25kdWN0IHRoYXQgb25lLiBOZXZlciBjb25kdWN0IG1vcmUgdGhhbiBvbmUgdGVzdCBvbiB0aGUgc2FtZSBkYXRhLgoKCkhlcmUgaXMgYW4gZXhhbXBsZSB0aGF0IHdlIGRpZCBub3QgZG8gaW4gY2xhc3MsIGJ1dCBob3cgeW91IGNhbiBkbyB0aGUgc2FtZSB0ZXN0cyBpZiBhbGwgdGhlIGRhdGEgaXMgaW4gYSBzaW5nbGUgZGF0YSBmcmFtZSBhbmQgeW91IGFyZSBjb21wYXJpbmcgYnkgYSBjYXRlZ29yaWNhbCB2YXJpYWJsZToKCmBgYHtyfQpjb21iaW5lZF9kaWFtb25kIDwtIHJiaW5kKG9uZV9jYXJhdF8zMCwgcG9pbnRfOTlfY2FyYXQpCmNvbWJpbmVkX2RpYW1vbmQkY2FyYXQgPC0gYXMuZmFjdG9yKGNvbWJpbmVkX2RpYW1vbmQkY2FyYXQpICN0aGlzIGVuc3VyZXMgdGhhdCBSIHJlY29nbml6ZXMgdGhlIGNhcmF0IHZhcmlhYmxlIGFzIGNhdGVnb3JpY2FsIGFuZCBub3QgbnVtZXJpYy4KCnQudGVzdChwcmljZXBlcmNhcmF0IH4gY2FyYXQsIGRhdGEgPSBjb21iaW5lZF9kaWFtb25kLCBhbHRlcm5hdGl2ZSA9ICJsZXNzIiwgdmFyLmVxdWFsID0gVFJVRSkKd3JpdGUudGFibGUoY29tYmluZWRfZGlhbW9uZCwgImNvbWJpbmVkX2RpYW1vbmQuY3N2IikKYGBgCgo=