THE PLAN

Study, Question, and Rationale

My project builds upon the study referenced below. I have proposed a potential follow-up experiment to extend the study’s findings. The project uses simulated data, structured and analyzed as if collected from a real experiment. The results are not scientific evidence; they demonstrate my skills in biological questioning, statistics, experimental design, and programming.

Disclaimer: This project analyzes simulated data. The questions and hypotheses are real, but the results and conclusions are not.

# Fill in each q-object. Type written answers between the r"( and )" markers.
# DO NOT edit any of the following: q# <- r"( AND )";  cat(q#)

q1 <- r"(Shen, F., Zheng, Y.-S., Dong, L., Cao, Z., & Cao, J. (2024). Enhanced tumor 
suppression in colorectal cancer via berberine-loaded PEG-PLGA nanoparticles. 
Frontiers in Pharmacology, 15, 1500731.
)";  cat(q1)
## Shen, F., Zheng, Y.-S., Dong, L., Cao, Z., & Cao, J. (2024). Enhanced tumor 
## suppression in colorectal cancer via berberine-loaded PEG-PLGA nanoparticles. 
## Frontiers in Pharmacology, 15, 1500731.
q2 <- r"(Does NPBer dosage (low, medium, high) affect CTNNB1 expression in HCT116 colorectal cancer cells?
)";  cat(q2)
## Does NPBer dosage (low, medium, high) affect CTNNB1 expression in HCT116 colorectal cancer cells?
q3 <- r"(Colorectal cancer (CRC) is one of the most common forms of cancer worldwide and remains a major cause of cancer-related deaths. Researchers are continually searching for new treatments that can more effectively target cancer cells while reducing harmful side effects. In the study Enhanced Tumor Suppression in Colorectal Cancer via Berberine-loaded PEG-PLGA Nanoparticles, Shen et al. investigated whether packaging berberine, a natural compound derived from plants, into PEG-PLGA nanoparticles could improve its ability to suppress colorectal cancer cells. The researchers created a nanoparticle formulation called NPBer and tested its effects on HCT116 colorectal cancer cells as well as in mouse tumor models. They found that NPBer was taken up more efficiently by cancer cells than free berberine and produced stronger inhibition of tumor cell growth. Their RNA sequencing analysis also showed that berberine affected several pathways associated with cancer progression, including the Wnt, TGF-beta, Hippo, and mTOR signaling pathways (Shen et al., 2024). Furthermore, NPBer increased tumor-cell apoptosis and reduced tumor growth in vivo, suggesting that nanoparticle delivery significantly enhances the anticancer effects of berberine.

Although the study demonstrated that NPBer influences pathways known to contribute to colorectal cancer, it did not directly examine how different NPBer dosages affect expression of specific oncogenes within those pathways. One particularly important target is CTNNB1, the gene that encodes β-catenin, a key component of the Wnt signaling pathway. Abnormal activation of β-catenin signaling is strongly associated with colorectal cancer development and progression because it promotes uncontrolled cell growth and survival. Previous research has shown that dysregulation of the Wnt/β-catenin pathway is a major driver of colorectal tumor formation and is considered an important therapeutic target in CRC treatment (Wan et al., 2021).

The proposed follow-up experiment would therefore investigate whether increasing doses of NPBer produce greater reductions in CTNNB1 expression in HCT116 cells. In this proposed study, cells would be treated with low, medium, and high NPBer concentrations, and normalized CTNNB1 expression would be measured. Determining the relationship between NPBer dosage and CTNNB1 expression could help clarify the mechanism through which NPBer suppresses tumor growth. This information would also provide valuable evidence for optimizing dosage levels in future preclinical studies and could support the development of more effective nanoparticle-based therapies for colorectal cancer.
)";  cat(q3)
## Colorectal cancer (CRC) is one of the most common forms of cancer worldwide and remains a major cause of cancer-related deaths. Researchers are continually searching for new treatments that can more effectively target cancer cells while reducing harmful side effects. In the study Enhanced Tumor Suppression in Colorectal Cancer via Berberine-loaded PEG-PLGA Nanoparticles, Shen et al. investigated whether packaging berberine, a natural compound derived from plants, into PEG-PLGA nanoparticles could improve its ability to suppress colorectal cancer cells. The researchers created a nanoparticle formulation called NPBer and tested its effects on HCT116 colorectal cancer cells as well as in mouse tumor models. They found that NPBer was taken up more efficiently by cancer cells than free berberine and produced stronger inhibition of tumor cell growth. Their RNA sequencing analysis also showed that berberine affected several pathways associated with cancer progression, including the Wnt, TGF-beta, Hippo, and mTOR signaling pathways (Shen et al., 2024). Furthermore, NPBer increased tumor-cell apoptosis and reduced tumor growth in vivo, suggesting that nanoparticle delivery significantly enhances the anticancer effects of berberine.
## 
## Although the study demonstrated that NPBer influences pathways known to contribute to colorectal cancer, it did not directly examine how different NPBer dosages affect expression of specific oncogenes within those pathways. One particularly important target is CTNNB1, the gene that encodes β-catenin, a key component of the Wnt signaling pathway. Abnormal activation of β-catenin signaling is strongly associated with colorectal cancer development and progression because it promotes uncontrolled cell growth and survival. Previous research has shown that dysregulation of the Wnt/β-catenin pathway is a major driver of colorectal tumor formation and is considered an important therapeutic target in CRC treatment (Wan et al., 2021).
## 
## The proposed follow-up experiment would therefore investigate whether increasing doses of NPBer produce greater reductions in CTNNB1 expression in HCT116 cells. In this proposed study, cells would be treated with low, medium, and high NPBer concentrations, and normalized CTNNB1 expression would be measured. Determining the relationship between NPBer dosage and CTNNB1 expression could help clarify the mechanism through which NPBer suppresses tumor growth. This information would also provide valuable evidence for optimizing dosage levels in future preclinical studies and could support the development of more effective nanoparticle-based therapies for colorectal cancer.
q4 <- r"(NPBer dosage (low, medium, and high) has no effect on normalized CTNNB1 expression in HCT116 colorectal cancer cells.
)";  cat(q4)
## NPBer dosage (low, medium, and high) has no effect on normalized CTNNB1 expression in HCT116 colorectal cancer cells.
q5 <- r"(Increasing NPBer dosage (from low to medium to high) decreases normalized CTNNB1 expression in HCT116 colorectal cancer cells.
)";  cat(q5)
## Increasing NPBer dosage (from low to medium to high) decreases normalized CTNNB1 expression in HCT116 colorectal cancer cells.
q6 <- r"(HCT116 colorectal cancer cells will be randomly assigned to one of three NPBer dosage treatment groups: low dose, medium dose, or high dose, with 10 cell samples per group (n = 30 total). The grouping variable is NPBer dosage, and the response variable is normalized CTNNB1 expression, a continuous measurement obtained through gene-expression analysis. Because CTNNB1 expression is measured on a continuous scale and is expected to vary naturally around a mean value within each treatment group, it is reasonable to assume an approximately normal distribution for ANOVA analysis.

The low-dose group serves as the comparison group, while the medium- and high-dose groups allow evaluation of whether increasing NPBer concentrations produce greater reductions in CTNNB1 expression. All cell cultures will be maintained under identical laboratory conditions, including incubation temperature, cell density, and treatment duration. Random assignment of samples to treatment groups will help reduce selection bias and ensure that uncontrolled variation is distributed evenly across groups.

One potential confounding variable is differences in cell health or growth stage before treatment, since these factors could influence gene expression independently of NPBer dosage. To address this confound, all cells will be obtained from the same HCT116 cell line batch and cultured to similar confluency before treatments are applied. Another potential confound is variation in RNA extraction or measurement procedures; therefore, identical protocols and equipment will be used for all samples.

RNA expression measurement is operator-sensitive, so analysts performing RNA extraction and 
quantification will be blinded to treatment group assignments using coded sample labels.

After treatment, normalized CTNNB1 expression will be measured for each sample and compared among the three dosage groups using a one-way ANOVA. This design allows testing whether NPBer dosage affects CTNNB1 expression while controlling for major sources of experimental variation.
)";  cat(q6)
## HCT116 colorectal cancer cells will be randomly assigned to one of three NPBer dosage treatment groups: low dose, medium dose, or high dose, with 10 cell samples per group (n = 30 total). The grouping variable is NPBer dosage, and the response variable is normalized CTNNB1 expression, a continuous measurement obtained through gene-expression analysis. Because CTNNB1 expression is measured on a continuous scale and is expected to vary naturally around a mean value within each treatment group, it is reasonable to assume an approximately normal distribution for ANOVA analysis.
## 
## The low-dose group serves as the comparison group, while the medium- and high-dose groups allow evaluation of whether increasing NPBer concentrations produce greater reductions in CTNNB1 expression. All cell cultures will be maintained under identical laboratory conditions, including incubation temperature, cell density, and treatment duration. Random assignment of samples to treatment groups will help reduce selection bias and ensure that uncontrolled variation is distributed evenly across groups.
## 
## One potential confounding variable is differences in cell health or growth stage before treatment, since these factors could influence gene expression independently of NPBer dosage. To address this confound, all cells will be obtained from the same HCT116 cell line batch and cultured to similar confluency before treatments are applied. Another potential confound is variation in RNA extraction or measurement procedures; therefore, identical protocols and equipment will be used for all samples.
## 
## RNA expression measurement is operator-sensitive, so analysts performing RNA extraction and 
## quantification will be blinded to treatment group assignments using coded sample labels.
## 
## After treatment, normalized CTNNB1 expression will be measured for each sample and compared among the three dosage groups using a one-way ANOVA. This design allows testing whether NPBer dosage affects CTNNB1 expression while controlling for major sources of experimental variation.
q7 <- r"(explanatory (x): NPBer dosage (low, medium, high) and response (y): relative CTNNB1 mRNA expression
)";  cat(q7)
## explanatory (x): NPBer dosage (low, medium, high) and response (y): relative CTNNB1 mRNA expression
q8  <- 0.05      # alpha (e.g., 0.05)
q9  <- 0.80      # power (e.g., 0.80)
q10 <- r"(medium)"   # effect size
q11 <- 53      # required sample size from the Power Analysis app
cat("alpha =", q8, "| power =", q9, "| effect size =", q10, "| n =", q11, "\n")
## alpha = 0.05 | power = 0.8 | effect size = medium | n = 53
q12 <- r"(An alpha of 0.05 was selected as the standard threshold for controlling Type I error in biological research. A power of 0.80 was chosen to ensure an 80% probability of detecting a true effect if one exists. A medium effect size was selected because prior research suggests NPBer has a measurable but not dramatic effect on CRC signaling pathways (Shen et al., 2024). Using these parameters in the Power Analysis app, the required sample size is n = 53 per group (159 total). The simulated dataset used in this project contains n = 10 per group (30 total), which falls below the required threshold and corresponds to a computed power of only 0.1951, a limitation discussed in the conclusion.)
)";  cat(q12)
## An alpha of 0.05 was selected as the standard threshold for controlling Type I error in biological research. A power of 0.80 was chosen to ensure an 80% probability of detecting a true effect if one exists. A medium effect size was selected because prior research suggests NPBer has a measurable but not dramatic effect on CRC signaling pathways (Shen et al., 2024). Using these parameters in the Power Analysis app, the required sample size is n = 53 per group (159 total). The simulated dataset used in this project contains n = 10 per group (30 total), which falls below the required threshold and corresponds to a computed power of only 0.1951, a limitation discussed in the conclusion.)
q13 <- r"(one-way ANOVA)"
cat("Primary test:", q13, "\n")
## Primary test: one-way ANOVA
q14 <- r"(A one-way ANOVA is appropriate because the study compares the mean normalized CTNNB1 expression among three independent NPBer dosage groups (low, medium, and high). The response variable is continuous, and the predictor variable is categorical with three levels. ANOVA tests whether at least one group mean differs significantly from the others while controlling the overall Type I error rate. If significant, post-hoc Tukey HSD tests will be used to identify which specific group pairs differ.
)";  cat(q14)
## A one-way ANOVA is appropriate because the study compares the mean normalized CTNNB1 expression among three independent NPBer dosage groups (low, medium, and high). The response variable is continuous, and the predictor variable is categorical with three levels. ANOVA tests whether at least one group mean differs significantly from the others while controlling the overall Type I error rate. If significant, post-hoc Tukey HSD tests will be used to identify which specific group pairs differ.
### Grading code: Do not change or delete.
plan_summary <- list(q1=q1, q2=q2, q3=q3, q4=q4, q5=q5, q6=q6, q7=q7,
                     q8=q8, q9=q9, q10=q10, q11=q11, q12=q12, q13=q13, q14=q14)

THE ANALYSIS

# PROVIDED CODE -- these are the packages used in your coding assignments.
library(MASS)
library(broom)
library(ggrepel)
library(car)
library(tidyverse)
library(tidyr)
library(ggplot2)

Step 1: Load and Explore the Data

# Read, display, summarize, and visually explore your data. You may add lines of code and additional objects and functions if you need to tidy your data.
mydata <- read.csv("kht019.csv")
head(mydata)
low high medium
2.50 0.88 1.16
1.40 8.87 0.54
1.09 0.89 1.72
0.85 0.31 1.65
1.01 0.89 1.47
1.81 0.62 1.02
summary(mydata)
##       low             high            medium     
##  Min.   :0.330   Min.   :0.2300   Min.   :0.540  
##  1st Qu.:0.890   1st Qu.:0.2875   1st Qu.:1.055  
##  Median :1.235   Median :0.6100   Median :1.410  
##  Mean   :1.245   Mean   :1.3840   Mean   :1.297  
##  3rd Qu.:1.640   3rd Qu.:0.8875   3rd Qu.:1.577  
##  Max.   :2.500   Max.   :8.8700   Max.   :1.720
long_data <- pivot_longer(mydata,
                          cols = c(low, high, medium),
                          names_to = "Dose",
                          values_to = "CTNNB1") ###I transformed the data using pivot_longer() so that I could transform the variables and address dosage as one variable with three levels of intensity, rather than as three individual variables.

model <- aov(CTNNB1 ~ Dose, data = long_data) ###I fit my ANOVA model to my long data. 
res <- residuals(model) ###I found the residuals of the model. 
fit <- fitted(model)
plot(fit, res,
     xlab = "Fitted Values",
     ylab = "Residuals",
     main = "Residuals vs Fitted Values") ###I made a residual plot to start testing for assumptions.
abline(h = 0, lty = 2)

qqnorm(res,
       main = "Normal Q-Q Plot of ANOVA Residuals") ###I made a q-q plot to start testing for normality.
qqline(res)

eda_plot <- ggplot(long_data, aes(x = Dose, y = CTNNB1)) +
  geom_boxplot() +
  geom_jitter(width = 0.1) +
  scale_x_discrete(limits = c("low", "medium", "high")) +
  labs(x = "NPBer Dosage",
       y = "Normalized CTNNB1 Expression") + 
  theme_minimal() ### I chose a boxplot for my data because I have three groups whose distributions need to be compared against each other. There are two outliers. 
eda_plot

### Grading code: Do not change or delete.
q15 <- mydata
q16 <- eda_plot

Decision: assumptions and EDA interpretation

q17 <- r"(The boxplot shows lower noramlized gene expression with the high dosage group compared to low and medium. Low dosage group has the greatest spread, compared to medium dosage group. High dosage group contains two extreme outliers. The medians of each group from greatest to smallest are as follows: medium dosage, low dosage, high dosage. Low dosage and high dosage are approximately symmetrical, medium dosage has a slight left skew. For a one-way ANOVA, the required assumptions are independence, normality of residuals, and homogeneity of variance (homoscedasticity). Independence is satisfied because samples were randomly assigned to treatment groups and each cell sample was measured only once. For normality, the Q-Q plot shows points that largely follow the reference line, but one point in the upper right deviates substantially, suggesting a potential outlier. With only n=10 per group, the Central Limit Theorem does not protect against this deviation, so normality is not fully satisfied. For homoscedasticity, the residuals vs. fitted plot shows three vertical clusters (one per group); the spread within each cluster appears roughly comparable, though the small sample size limits this assessment.
)";  cat(q17)
## The boxplot shows lower noramlized gene expression with the high dosage group compared to low and medium. Low dosage group has the greatest spread, compared to medium dosage group. High dosage group contains two extreme outliers. The medians of each group from greatest to smallest are as follows: medium dosage, low dosage, high dosage. Low dosage and high dosage are approximately symmetrical, medium dosage has a slight left skew. For a one-way ANOVA, the required assumptions are independence, normality of residuals, and homogeneity of variance (homoscedasticity). Independence is satisfied because samples were randomly assigned to treatment groups and each cell sample was measured only once. For normality, the Q-Q plot shows points that largely follow the reference line, but one point in the upper right deviates substantially, suggesting a potential outlier. With only n=10 per group, the Central Limit Theorem does not protect against this deviation, so normality is not fully satisfied. For homoscedasticity, the residuals vs. fitted plot shows three vertical clusters (one per group); the spread within each cluster appears roughly comparable, though the small sample size limits this assessment.

Step 2: Transformation Analysis (Box-Cox)

# PROVIDED CODE -- Box-Cox lambda. You only edit the model formula on the next line.
# Write your design as a linear model (see optimal-lambda_guide.md or boxcox_decision_guide.Rmd):
#   two-sample t-test or ANOVA:  lm(response ~ group, data = mydata)
#   linear regression:           lm(response ~ predictor, data = mydata)
#   paired t-test:               lm(value ~ condition + subject_id, data = long_mydata)
# Box-Cox needs a POSITIVE response. If yours has zero or negative values, shift it first
# (e.g., mydata$resp_pos <- mydata$resp + abs(min(mydata$resp)) + 1) and model resp_pos.
bc_model <- lm( CTNNB1 ~ Dose , data = long_data)   # <- edit this formula only

# PROVIDED: profile the likelihood and extract the optimal lambda
bc_result <- boxcox(bc_model, lambda = seq(-2, 2, by = 0.1))

bc_lambda  <- bc_result$x[which.max(bc_result$y)]
cat("Optimal lambda:", round(bc_lambda, 3), "\n")
## Optimal lambda: -0.222
### Grading code: Do not change or delete.
q18 <- bc_lambda
# YOUR CODE: pick ONE lambda-guided transform, then compare RESIDUALS from bc_model
# (untransformed response) vs residuals from a refitted transformed model — histogram both
# residual sets, KS test both residual sets. Name results ks_untransformed and ks_transformed.
long_data$CTNNB1_log <- log(long_data$CTNNB1)

res_untransformed <- residuals(bc_model)
hist(res_untransformed, main = "Untransformed Residuals")

res_jittered <- jitter(res_untransformed, factor = 0.01)
ks_untransformed <- ks.test(res_jittered, "pnorm",
                             mean = mean(res_untransformed),
                             sd   = sd(res_untransformed))

transformed_model <- lm(CTNNB1_log ~ Dose, data = long_data)
res_transformed <- residuals(transformed_model)
hist(res_transformed, main = "Log-Transformed Residuals")

res_trans_jittered <- jitter(res_transformed, factor = 0.01)
ks_transformed <- ks.test(res_trans_jittered, "pnorm",
                           mean = mean(res_transformed),
                           sd   = sd(res_transformed))

ks_untransformed
## 
##  Exact one-sample Kolmogorov-Smirnov test
## 
## data:  res_jittered
## D = 0.28966, p-value = 0.01008
## alternative hypothesis: two-sided
ks_transformed
## 
##  Exact one-sample Kolmogorov-Smirnov test
## 
## data:  res_trans_jittered
## D = 0.19052, p-value = 0.1989
## alternative hypothesis: two-sided
### Grading code: Do not change or delete.
q19 <- ks_untransformed
q20 <- ks_transformed

Decision: which version of the data will you analyze?

q21 <- r"(The optimal Box-Cox lambda was -0.222. Since this is closest to 0, a log transformation was applied to CTNNB1 expression. Comparing model residuals, the untransformed residuals failed the KS normality test (D = 0.290, p = 0.010), indicating a significant departure from normality. The log-transformed residuals failed to reject normality (D = 0.191, p = 0.199), and the histogram appeared more symmetric and bell-shaped. Therefore, the transformed (log) data will be used in the primary analysis. The untransformed histogram was right-skewed, while the log-transformed histogram appeared more symmetric and approximately bell-shaped.
)";  cat(q21)
## The optimal Box-Cox lambda was -0.222. Since this is closest to 0, a log transformation was applied to CTNNB1 expression. Comparing model residuals, the untransformed residuals failed the KS normality test (D = 0.290, p = 0.010), indicating a significant departure from normality. The log-transformed residuals failed to reject normality (D = 0.191, p = 0.199), and the histogram appeared more symmetric and bell-shaped. Therefore, the transformed (log) data will be used in the primary analysis. The untransformed histogram was right-skewed, while the log-transformed histogram appeared more symmetric and approximately bell-shaped.

Step 3: Outlier Diagnosis and Handling

# PROVIDED CODE -- Cook's distance diagnostic (you were not expected to write this).
# It reuses bc_model from Step 2.
aug <- augment(bc_model) |>
  mutate(case = row_number())
cook_cut <- 4 / nobs(bc_model)
influential <- aug |> filter(.cooksd > cook_cut)

outlier_plot <- outlier_plot <- ggplot(long_data, aes(x = Dose, y = CTNNB1)) + geom_boxplot() + theme_minimal()
print(outlier_plot)

# regression students use the Cook's distance plot above; t-test and ANOVA students replace it with the boxplot below and delete the Cook's plot above.
# outlier_plot <- ggplot(mydata, aes(x = GROUP, y = RESPONSE)) + geom_boxplot()
# print(outlier_plot)

### Grading code: Do not change or delete.
q22 <- outlier_plot
# YOUR CODE: build the dataset you will analyze.
# Keep everything:    mydata_clean <- mydata
# Or filter out rows you justify excluding.
mydata_clean <- long_data 

### Grading code: Do not change or delete.
q23 <- mydata_clean

Decision: outliers

# Are there massive or influential outliers? TRUE or FALSE.
q24 <- TRUE
cat("Influential outliers present:", q24, "\n")
## Influential outliers present: TRUE
# Explain what you did about outliers and why.
q25 <- r"(The boxplot revealed one influential outlier in the high-dose group with a CTNNB1 value near 8, far above the group interquartile range. One high-dose observation was identified as an influential outlier, but because there was no evidence of measurement or recording error, it was retained in the analysis. This outlier pulls the group mean in the positive direction because it is much larger than the rest of the data points. No measurement error was suspected because we were not present when the data was gathered and thus do not know if it was collected accurately. 
)";  cat(q25)
## The boxplot revealed one influential outlier in the high-dose group with a CTNNB1 value near 8, far above the group interquartile range. One high-dose observation was identified as an influential outlier, but because there was no evidence of measurement or recording error, it was retained in the analysis. This outlier pulls the group mean in the positive direction because it is much larger than the rest of the data points. No measurement error was suspected because we were not present when the data was gathered and thus do not know if it was collected accurately.

Step 4: Primary Statistical Analysis

# Which version of the data are you using?
q26 <- r"(transformed)";  cat("Data version:", q26, "\n")
## Data version: transformed
mydata_clean$CTNNB1_log <- log(mydata_clean$CTNNB1)

# YOUR CODE: conduct your primary test (and post-hoc tests if needed).
primary_test <- aov(CTNNB1_log ~ Dose, data = mydata_clean)
primary_test
## Call:
##    aov(formula = CTNNB1_log ~ Dose, data = mydata_clean)
## 
## Terms:
##                      Dose Residuals
## Sum of Squares   2.286775 15.387470
## Deg. of Freedom         2        27
## 
## Residual standard error: 0.7549214
## Estimated effects may be unbalanced
summary(primary_test)
##             Df Sum Sq Mean Sq F value Pr(>F)
## Dose         2  2.287  1.1434   2.006  0.154
## Residuals   27 15.387  0.5699
TukeyHSD(primary_test)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = CTNNB1_log ~ Dose, data = mydata_clean)
## 
## $Dose
##                  diff        lwr       upr     p adj
## low-high    0.4904038 -0.3466751 1.3274828 0.3291391
## medium-high 0.6484938 -0.1885851 1.4855728 0.1522123
## medium-low  0.1580900 -0.6789889 0.9951689 0.8866616
### Grading code: Do not change or delete.
q27 <- primary_test

Step 5: Primary Figure

# YOUR CODE: build your single primary figure.
main_figure <- ggplot(mydata_clean, aes(x = Dose, y = CTNNB1_log, fill = Dose)) +
  geom_boxplot(outlier.shape = NA, alpha = 0.6) +
  geom_jitter(width = 0.1, size = 1.5) +
  scale_x_discrete(limits = c("low", "medium", "high")) +
  labs(
    x = "NPBer Dosage",
    y = "Log-Transformed CTNNB1 Expression",
  ) +
  theme_classic() +
  theme(legend.position = "none")
main_figure

### Grading code: Do not change or delete.
q28 <- main_figure

Figure caption

q29 <- r"(Log-transformed CTNNB1 expression in HCT116 colorectal cancer cells treated with low, medium, or high doses of NPBer (n = 30). Boxes show the interquartile range, horizontal lines show medians, and points show individual observations. No significant differences were detected among dosage groups (one-way ANOVA, p = 0.154), though the high-dose group shows a slightly lower median than low and medium doses.
)";  cat(q29)
## Log-transformed CTNNB1 expression in HCT116 colorectal cancer cells treated with low, medium, or high doses of NPBer (n = 30). Boxes show the interquartile range, horizontal lines show medians, and points show individual observations. No significant differences were detected among dosage groups (one-way ANOVA, p = 0.154), though the high-dose group shows a slightly lower median than low and medium doses.

THE INTERPRETATION

Reading and Interpreting Your Results

q30 <- 0.154                                                 # p-value you READ from your output
q31 <- r"(fail to reject the null)"     # your decision
q32 <- 30                                                  # final sample size analyzed
cat("p-value =", q30, "| decision =", q31, "| n =", q32, "\n")
## p-value = 0.154 | decision = fail to reject the null | n = 30
q33 <- r"(A one-way ANOVA on log-transformed CTNNB1 expression revealed no statistically significant effect of NPBer dosage (F(2, 27) = 2.006, p = 0.154, alpha = 0.05), so we fail to reject the null hypothesis that NPBer dosage has no effect on CTNNB1 expression. Post-hoc Tukey HSD tests confirmed that no pairwise comparisons were significant: low vs. high (diff = 0.490, 95% CI [-0.347, 1.327], p = 0.329), medium vs. high (diff = 0.648, 95% CI [-0.189, 1.486], p = 0.152), and medium vs. low (diff = 0.158, 95% CI [-0.679, 0.995], p = 0.887). The wide confidence intervals (for example, the true difference between high and low dose could plausibly range from -0.347 to 1.327 log units) reflect high uncertainty in our estimates and mean the data are too imprecise to rule out a biologically meaningful effect. A Type I error is unlikely given the non-significant result. A Type II error (false negative) is a real concern here: our computed power was only 0.1951 due to the small sample size (n = 30, 10 per group), meaning we had a low probability of detecting a true effect even if one existed. The retained outlier in the high-dose group likely inflated within-group variance, further reducing sensitivity. These results do not contradict Shen et al. (2024) or Wan et al. (2021), but they underscore the need for a larger, adequately powered study to draw conclusions about dose-dependent CTNNB1 suppression by NPBer.
)";  cat(q33)
## A one-way ANOVA on log-transformed CTNNB1 expression revealed no statistically significant effect of NPBer dosage (F(2, 27) = 2.006, p = 0.154, alpha = 0.05), so we fail to reject the null hypothesis that NPBer dosage has no effect on CTNNB1 expression. Post-hoc Tukey HSD tests confirmed that no pairwise comparisons were significant: low vs. high (diff = 0.490, 95% CI [-0.347, 1.327], p = 0.329), medium vs. high (diff = 0.648, 95% CI [-0.189, 1.486], p = 0.152), and medium vs. low (diff = 0.158, 95% CI [-0.679, 0.995], p = 0.887). The wide confidence intervals (for example, the true difference between high and low dose could plausibly range from -0.347 to 1.327 log units) reflect high uncertainty in our estimates and mean the data are too imprecise to rule out a biologically meaningful effect. A Type I error is unlikely given the non-significant result. A Type II error (false negative) is a real concern here: our computed power was only 0.1951 due to the small sample size (n = 30, 10 per group), meaning we had a low probability of detecting a true effect even if one existed. The retained outlier in the high-dose group likely inflated within-group variance, further reducing sensitivity. These results do not contradict Shen et al. (2024) or Wan et al. (2021), but they underscore the need for a larger, adequately powered study to draw conclusions about dose-dependent CTNNB1 suppression by NPBer.
q34 <- r"(
This study measured CTNNB1 mRNA expression, but mRNA levels do not always reflect protein abundance due to post-transcriptional regulation. A direct follow-up would quantify β-catenin protein levels via western blot across the same three NPBer doses in HCT116 cells. This would establish whether the transcriptional changes detected here translate into functional suppression of the Wnt pathway, which is the mechanism most relevant to tumor growth inhibition identified by Shen et al. (2024).
)";  cat(q34)
## 
## This study measured CTNNB1 mRNA expression, but mRNA levels do not always reflect protein abundance due to post-transcriptional regulation. A direct follow-up would quantify β-catenin protein levels via western blot across the same three NPBer doses in HCT116 cells. This would establish whether the transcriptional changes detected here translate into functional suppression of the Wnt pathway, which is the mechanism most relevant to tumor growth inhibition identified by Shen et al. (2024).
q35 <- r"(Shen, F., Zheng, Y.-S., Dong, L., Cao, Z., & Cao, J. (2024). Enhanced tumor 
suppression in colorectal cancer via berberine-loaded PEG-PLGA nanoparticles. 
Frontiers in Pharmacology, 15, 1500731. https://doi.org/10.3389/fphar.2024.1500731

Wan, X., Liu, Z., Ding, X., & Qian, Y. (2021). Wnt/β-catenin signaling pathway in 
colorectal cancer: Implications for therapy. Frontiers in Oncology, 11, 723942.
https://doi.org/10.3389/fonc.2021.723942

Claude (Anthropic). (2025). AI assistance used for code debugging, statistical 
interpretation guidance, and written answer refinement throughout this project.

BILD 5 provided AI Chatbot. AI assistance used for code debugging throughout this project.
)";  cat(q35)
## Shen, F., Zheng, Y.-S., Dong, L., Cao, Z., & Cao, J. (2024). Enhanced tumor 
## suppression in colorectal cancer via berberine-loaded PEG-PLGA nanoparticles. 
## Frontiers in Pharmacology, 15, 1500731. https://doi.org/10.3389/fphar.2024.1500731
## 
## Wan, X., Liu, Z., Ding, X., & Qian, Y. (2021). Wnt/β-catenin signaling pathway in 
## colorectal cancer: Implications for therapy. Frontiers in Oncology, 11, 723942.
## https://doi.org/10.3389/fonc.2021.723942
## 
## Claude (Anthropic). (2025). AI assistance used for code debugging, statistical 
## interpretation guidance, and written answer refinement throughout this project.
## 
## BILD 5 provided AI Chatbot. AI assistance used for code debugging throughout this project.
### Grading code: Do not change or delete.
interpretation_summary <- list(p_value=q30, decision=q31, n=q32,
                               conclusion=q33, future=q34, citations=q35)

Reproducibility

# PROVIDED CODE -- documents that your analysis stayed within the allowed packages.
loaded_packages <- sort((.packages()))
loaded_packages
##  [1] "base"      "broom"     "car"       "carData"   "datasets"  "dplyr"    
##  [7] "forcats"   "ggplot2"   "ggrepel"   "graphics"  "grDevices" "lubridate"
## [13] "MASS"      "methods"   "purrr"     "readr"     "stats"     "stringr"  
## [19] "tibble"    "tidyr"     "tidyverse" "utils"