Report is dedicated to Karina-Katerina Brueva (hustler.spb)


Load the Titanic dataset in R and display the first few rows:

# Load necessary libraries
library(ggplot2)

# Load the Titanic dataset from the provided URL
url <- "https://web.stanford.edu/class/archive/cs/cs109/cs109.1166/stuff/titanic.csv"
titanic <- read.csv(url)

# Display the first few rows
head(titanic)
NA

Create a bar chart of the Pclass variable showing the count of passengers by class:

ggplot(titanic, aes(x = factor(Pclass))) +
  geom_bar() +
  labs(title = "Count of Passengers by Class", x = "Passenger Class", y = "Count")

Create a scatter plot of Age vs. Fare, color the points by Survived:

ggplot(titanic, aes(x = Age, y = Fare, color = factor(Survived))) +
  geom_point() +
  labs(title = "Age vs. Fare Colored by Survival", x = "Age", y = "Fare", color = "Survived")

Create a bar chart showing the count of survivors (Survived) grouped by Sex:

ggplot(titanic, aes(x = Sex, fill = factor(Survived))) +
  geom_bar(position = "dodge") +
  labs(title = "Count of Survivors Grouped by Sex", x = "Sex", y = "Count", fill = "Survived")

Create a histogram of the Age variable and facet the plot by Survived:

ggplot(titanic, aes(x = Age)) +
  geom_histogram(binwidth = 5, fill = "blue", color = "black") +
  facet_wrap(~Survived) +
  labs(title = "Histogram of Age Faceted by Survival", x = "Age", y = "Count")

Write R code to create a boxplot for Fare grouped by Pclass:

ggplot(titanic, aes(x = factor(Pclass), y = Fare)) +
  geom_boxplot() +
  labs(title = "Boxplot of Fare Grouped by Pclass", x = "Passenger Class", y = "Fare")

Create a stacked bar chart showing the proportion of Sex within each Pclass:

ggplot(titanic, aes(x = factor(Pclass), fill = Sex)) +
  geom_bar(position = "fill") +
  labs(title = "Proportion of Sex Within Each Pclass", x = "Passenger Class", y = "Proportion", fill = "Sex")

Generate a density plot for the Age variable, filled by the Survived variable:

ggplot(titanic, aes(x = Age, fill = factor(Survived))) +
  geom_density(alpha = 0.5) +
  labs(title = "Density Plot of Age Filled by Survival", x = "Age", y = "Density", fill = "Survived")

Use facet_wrap() to create a faceted scatter plot of Age vs. Fare grouped by Pclass:

ggplot(titanic, aes(x = Age, y = Fare)) +
  geom_point() +
  facet_wrap(~Pclass) +
  labs(title = "Scatter Plot of Age vs. Fare Grouped by Pclass", x = "Age", y = "Fare")

Create a violin plot of Age grouped by Pclass and colored by Survived:

ggplot(titanic, aes(x = factor(Pclass), y = Age, fill = factor(Survived))) +
  geom_violin() +
  labs(title = "Violin Plot of Age Grouped by Pclass and Colored by Survival", x = "Passenger Class", y = "Age", fill = "Survived")

LS0tCnRpdGxlOiAiQmlnIERhdGEgTWlkZXJtLCBLaXJpbGwgQmFzIgpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sKLS0tCgpSZXBvcnQgaXMgZGVkaWNhdGVkIHRvIEthcmluYS1LYXRlcmluYSBCcnVldmEgKGh1c3RsZXIuc3BiKQoKLS0tCgpMb2FkIHRoZSBUaXRhbmljIGRhdGFzZXQgaW4gUiBhbmQgZGlzcGxheSB0aGUgZmlyc3QgZmV3IHJvd3M6CmBgYHtyfQojIExvYWQgbmVjZXNzYXJ5IGxpYnJhcmllcwpsaWJyYXJ5KGdncGxvdDIpCgojIExvYWQgdGhlIFRpdGFuaWMgZGF0YXNldCBmcm9tIHRoZSBwcm92aWRlZCBVUkwKdXJsIDwtICJodHRwczovL3dlYi5zdGFuZm9yZC5lZHUvY2xhc3MvYXJjaGl2ZS9jcy9jczEwOS9jczEwOS4xMTY2L3N0dWZmL3RpdGFuaWMuY3N2Igp0aXRhbmljIDwtIHJlYWQuY3N2KHVybCkKCiMgRGlzcGxheSB0aGUgZmlyc3QgZmV3IHJvd3MKaGVhZCh0aXRhbmljKQoKYGBgCgoKCkNyZWF0ZSBhIGJhciBjaGFydCBvZiB0aGUgUGNsYXNzIHZhcmlhYmxlIHNob3dpbmcgdGhlIGNvdW50IG9mIHBhc3NlbmdlcnMgYnkgY2xhc3M6CmBgYHtyfQpnZ3Bsb3QodGl0YW5pYywgYWVzKHggPSBmYWN0b3IoUGNsYXNzKSkpICsKICBnZW9tX2JhcigpICsKICBsYWJzKHRpdGxlID0gIkNvdW50IG9mIFBhc3NlbmdlcnMgYnkgQ2xhc3MiLCB4ID0gIlBhc3NlbmdlciBDbGFzcyIsIHkgPSAiQ291bnQiKQpgYGAKCkNyZWF0ZSBhIHNjYXR0ZXIgcGxvdCBvZiBBZ2UgdnMuIEZhcmUsIGNvbG9yIHRoZSBwb2ludHMgYnkgU3Vydml2ZWQ6CgpgYGB7cn0KZ2dwbG90KHRpdGFuaWMsIGFlcyh4ID0gQWdlLCB5ID0gRmFyZSwgY29sb3IgPSBmYWN0b3IoU3Vydml2ZWQpKSkgKwogIGdlb21fcG9pbnQoKSArCiAgbGFicyh0aXRsZSA9ICJBZ2UgdnMuIEZhcmUgQ29sb3JlZCBieSBTdXJ2aXZhbCIsIHggPSAiQWdlIiwgeSA9ICJGYXJlIiwgY29sb3IgPSAiU3Vydml2ZWQiKQpgYGAKCkNyZWF0ZSBhIGJhciBjaGFydCBzaG93aW5nIHRoZSBjb3VudCBvZiBzdXJ2aXZvcnMgKFN1cnZpdmVkKSBncm91cGVkIGJ5IFNleDoKCmBgYHtyfQpnZ3Bsb3QodGl0YW5pYywgYWVzKHggPSBTZXgsIGZpbGwgPSBmYWN0b3IoU3Vydml2ZWQpKSkgKwogIGdlb21fYmFyKHBvc2l0aW9uID0gImRvZGdlIikgKwogIGxhYnModGl0bGUgPSAiQ291bnQgb2YgU3Vydml2b3JzIEdyb3VwZWQgYnkgU2V4IiwgeCA9ICJTZXgiLCB5ID0gIkNvdW50IiwgZmlsbCA9ICJTdXJ2aXZlZCIpCgpgYGAKCkNyZWF0ZSBhIGhpc3RvZ3JhbSBvZiB0aGUgQWdlIHZhcmlhYmxlIGFuZCBmYWNldCB0aGUgcGxvdCBieSBTdXJ2aXZlZDoKYGBge3J9CmdncGxvdCh0aXRhbmljLCBhZXMoeCA9IEFnZSkpICsKICBnZW9tX2hpc3RvZ3JhbShiaW53aWR0aCA9IDUsIGZpbGwgPSAiYmx1ZSIsIGNvbG9yID0gImJsYWNrIikgKwogIGZhY2V0X3dyYXAoflN1cnZpdmVkKSArCiAgbGFicyh0aXRsZSA9ICJIaXN0b2dyYW0gb2YgQWdlIEZhY2V0ZWQgYnkgU3Vydml2YWwiLCB4ID0gIkFnZSIsIHkgPSAiQ291bnQiKQpgYGAKCldyaXRlIFIgY29kZSB0byBjcmVhdGUgYSBib3hwbG90IGZvciBGYXJlIGdyb3VwZWQgYnkgUGNsYXNzOgpgYGB7cn0KZ2dwbG90KHRpdGFuaWMsIGFlcyh4ID0gZmFjdG9yKFBjbGFzcyksIHkgPSBGYXJlKSkgKwogIGdlb21fYm94cGxvdCgpICsKICBsYWJzKHRpdGxlID0gIkJveHBsb3Qgb2YgRmFyZSBHcm91cGVkIGJ5IFBjbGFzcyIsIHggPSAiUGFzc2VuZ2VyIENsYXNzIiwgeSA9ICJGYXJlIikKCmBgYAoKQ3JlYXRlIGEgc3RhY2tlZCBiYXIgY2hhcnQgc2hvd2luZyB0aGUgcHJvcG9ydGlvbiBvZiBTZXggd2l0aGluIGVhY2ggUGNsYXNzOgpgYGB7cn0KZ2dwbG90KHRpdGFuaWMsIGFlcyh4ID0gZmFjdG9yKFBjbGFzcyksIGZpbGwgPSBTZXgpKSArCiAgZ2VvbV9iYXIocG9zaXRpb24gPSAiZmlsbCIpICsKICBsYWJzKHRpdGxlID0gIlByb3BvcnRpb24gb2YgU2V4IFdpdGhpbiBFYWNoIFBjbGFzcyIsIHggPSAiUGFzc2VuZ2VyIENsYXNzIiwgeSA9ICJQcm9wb3J0aW9uIiwgZmlsbCA9ICJTZXgiKQpgYGAKCkdlbmVyYXRlIGEgZGVuc2l0eSBwbG90IGZvciB0aGUgQWdlIHZhcmlhYmxlLCBmaWxsZWQgYnkgdGhlIFN1cnZpdmVkIHZhcmlhYmxlOgpgYGB7cn0KZ2dwbG90KHRpdGFuaWMsIGFlcyh4ID0gQWdlLCBmaWxsID0gZmFjdG9yKFN1cnZpdmVkKSkpICsKICBnZW9tX2RlbnNpdHkoYWxwaGEgPSAwLjUpICsKICBsYWJzKHRpdGxlID0gIkRlbnNpdHkgUGxvdCBvZiBBZ2UgRmlsbGVkIGJ5IFN1cnZpdmFsIiwgeCA9ICJBZ2UiLCB5ID0gIkRlbnNpdHkiLCBmaWxsID0gIlN1cnZpdmVkIikKYGBgCgpVc2UgZmFjZXRfd3JhcCgpIHRvIGNyZWF0ZSBhIGZhY2V0ZWQgc2NhdHRlciBwbG90IG9mIEFnZSB2cy4gRmFyZSBncm91cGVkIGJ5IFBjbGFzczoKYGBge3J9CmdncGxvdCh0aXRhbmljLCBhZXMoeCA9IEFnZSwgeSA9IEZhcmUpKSArCiAgZ2VvbV9wb2ludCgpICsKICBmYWNldF93cmFwKH5QY2xhc3MpICsKICBsYWJzKHRpdGxlID0gIlNjYXR0ZXIgUGxvdCBvZiBBZ2UgdnMuIEZhcmUgR3JvdXBlZCBieSBQY2xhc3MiLCB4ID0gIkFnZSIsIHkgPSAiRmFyZSIpCmBgYAoKQ3JlYXRlIGEgdmlvbGluIHBsb3Qgb2YgQWdlIGdyb3VwZWQgYnkgUGNsYXNzIGFuZCBjb2xvcmVkIGJ5IFN1cnZpdmVkOgpgYGB7cn0KZ2dwbG90KHRpdGFuaWMsIGFlcyh4ID0gZmFjdG9yKFBjbGFzcyksIHkgPSBBZ2UsIGZpbGwgPSBmYWN0b3IoU3Vydml2ZWQpKSkgKwogIGdlb21fdmlvbGluKCkgKwogIGxhYnModGl0bGUgPSAiVmlvbGluIFBsb3Qgb2YgQWdlIEdyb3VwZWQgYnkgUGNsYXNzIGFuZCBDb2xvcmVkIGJ5IFN1cnZpdmFsIiwgeCA9ICJQYXNzZW5nZXIgQ2xhc3MiLCB5ID0gIkFnZSIsIGZpbGwgPSAiU3Vydml2ZWQiKQpgYGAKCgoKCgoKCgoKCg==