This report analyzes survey data on investment behavior and demographics. The dataset includes age, gender, education, investing experience, and crowdfunding activity. We present descriptive statistics and five distinct visualizations.
psych::describe(data[vars])
## vars n mean sd median trimmed mad min max range
## Age 1 320 2.97 0.93 3 2.86 0.00 1 6 5
## Gender 2 320 0.54 0.50 1 0.55 0.00 0 1 1
## Education 3 320 3.98 1.12 4 4.14 0.00 1 6 5
## Accredited 4 320 0.58 0.49 1 0.60 0.00 0 1 1
## Professional_Investor 5 320 0.42 0.50 0 0.41 0.00 0 1 1
## Entrepreneur 6 320 0.63 0.48 1 0.67 0.00 0 1 1
## Raised_CF 7 320 1.50 1.00 2 1.50 1.48 0 3 3
## Invested_Outside_CF 8 320 0.75 0.43 1 0.81 0.00 0 1 1
## Investing_Experience 9 320 3.58 0.97 4 3.62 1.48 1 5 4
## skew kurtosis se
## Age 1.05 1.62 0.05
## Gender -0.15 -1.98 0.03
## Education -1.17 1.62 0.06
## Accredited -0.31 -1.91 0.03
## Professional_Investor 0.30 -1.91 0.03
## Entrepreneur -0.56 -1.70 0.03
## Raised_CF -0.15 -1.08 0.06
## Invested_Outside_CF -1.15 -0.68 0.02
## Investing_Experience -0.20 -0.53 0.05
ggplot(data, aes(x = Age)) +
geom_histogram(binwidth = 1, fill = "skyblue", color = "white") +
labs(title = "Participant Age Distribution",
x = "Age Group (Ordinal Code)",
y = "Number of Participants")
ggplot(data, aes(x = factor(Gender))) +
geom_bar(fill = "#FDC086") +
labs(title = "Gender Distribution of Respondents",
x = "Gender (0 = Female, 1 = Male)",
y = "Count")
ggplot(data, aes(x = factor(Gender), y = Investing_Experience)) +
geom_boxplot(fill = "#BEAED4") +
labs(title = "Investing Experience by Gender",
x = "Gender (0 = Female, 1 = Male)",
y = "Self-Rated Investing Experience (1–5)")
ggplot(data, aes(x = Raised_CF, y = Invested_Outside_CF)) +
geom_jitter(width = 0.2, height = 0.1, alpha = 0.6, color = "#7FC97F") +
geom_smooth(method = "lm", color = "darkred", se = FALSE) +
labs(title = "Raised vs Invested in Startups",
x = "Raised via Crowdfunding (0 = No, 1+ = Yes/Multiple)",
y = "Invested Outside Crowdfunding (0 = No, 1 = Yes)")
corr_data <- na.omit(data[vars])
corr_matrix <- cor(corr_data)
corrplot(corr_matrix, method = "color", type = "lower", tl.cex = 0.8)