Skip to content

Commit c3baacc

Browse files
committed
adjust dge group stats code
1 parent af90b65 commit c3baacc

File tree

2 files changed

+28
-33
lines changed

2 files changed

+28
-33
lines changed

RNAseq/Pipeline_GL-DPPD-7115_Versions/GL-DPPD-7115.md

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1289,30 +1289,25 @@ output_table$LRT.p.value <- res_lrt@listData$padj
12891289

12901290
### Add group-wise statistics ###
12911291
tcounts <- as.data.frame(t(normCounts))
1292-
tcounts$group <- names(group)
1292+
tcounts$group <- sampleTable$condition[match(rownames(tcounts), rownames(sampleTable))]
12931293

12941294
# Aggregate group means and standard deviations
1295-
agg_means <- aggregate(. ~ group, data = tcounts, mean)
1296-
agg_stdev <- aggregate(. ~ group, data = tcounts, sd)
1295+
agg_means <- aggregate(. ~ group, data = tcounts, FUN = mean, na.rm = TRUE)
1296+
agg_stdev <- aggregate(. ~ group, data = tcounts, FUN = sd, na.rm = TRUE)
12971297

1298-
# Save the unique group names before transposing
1298+
# Save group names
12991299
group_names <- agg_means$group
13001300

1301-
# Remove the 'group' column and transpose the data
1302-
group_means <- t(agg_means[-1])
1303-
group_stdev <- t(agg_stdev[-1])
1301+
# Remove the 'group' column and transpose to match expected structure
1302+
group_means <- as.data.frame(t(agg_means[-1]))
1303+
group_stdev <- as.data.frame(t(agg_stdev[-1]))
13041304

1305-
# Assign the unique group names to the columns
1306-
colnames(group_means) <- group_names
1307-
colnames(group_stdev) <- group_names
1305+
# Assign column names based on group names
1306+
colnames(group_means) <- paste0("Group.Mean_(", group_names, ")")
1307+
colnames(group_stdev) <- paste0("Group.Stdev_(", group_names, ")")
13081308

1309-
# For each group, add mean and stdev columns
1310-
for (group_name in group_names) {
1311-
mean_col <- paste0("Group.Mean_(", group_name, ")")
1312-
stdev_col <- paste0("Group.Stdev_(", group_name, ")")
1313-
output_table[[mean_col]] <- group_means[, paste0("Group.Mean_", group_means['group',])]
1314-
output_table[[stdev_col]] <- group_stdev[, paste0("Group.Stdev_", group_stdev['group',])]
1315-
}
1309+
# Add computed group means and standard deviations to output_table
1310+
output_table <- cbind(output_table, group_means, group_stdev)
13161311

13171312
### Read in GeneLab annotation table for the organism of interest ###
13181313
annot <- read.table(annotations_link,

RNAseq/Workflow_Documentation/NF_RCP/workflow_code/bin/dge_deseq2.Rmd

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -359,24 +359,24 @@ output_table <- cbind(output_table, res_df)
359359
output_table$All.mean <- rowMeans(normCounts, na.rm = TRUE)
360360
output_table$All.stdev <- matrixStats::rowSds(as.matrix(normCounts), na.rm = TRUE, useNames = FALSE)
361361
output_table$LRT.p.value <- res_lrt@listData$padj
362-
## Calculate group statistics
363-
tcounts <- as.data.frame(t(normCounts))
364-
tcounts$group <- names(group)
365362
# Calculate group means and standard deviations
366-
agg_means <- aggregate(. ~ group, data = tcounts, mean)
367-
agg_stdev <- aggregate(. ~ group, data = tcounts, sd)
363+
# Transpose normalized counts
364+
tcounts <- as.data.frame(t(normCounts))
365+
# Assign group labels based on `sampleTable`
366+
tcounts$group <- sampleTable$condition[match(rownames(tcounts), rownames(sampleTable))]
367+
# Aggregate group means and standard deviations
368+
agg_means <- aggregate(. ~ group, data = tcounts, FUN = mean, na.rm = TRUE)
369+
agg_stdev <- aggregate(. ~ group, data = tcounts, FUN = sd, na.rm = TRUE)
370+
# Extract group names
368371
group_names <- agg_means$group
369-
# Remove the 'group' column and transpose the data
370-
group_means <- t(agg_means[-1])
371-
group_stdev <- t(agg_stdev[-1])
372-
# Assign the unique group names to the columns
373-
colnames(group_means) <- group_names
374-
colnames(group_stdev) <- group_names
375-
# Add stats to output table
376-
for (group_name in group_names) {
377-
output_table[[paste0("Group.Mean_(", group_name, ")")]] <- group_means[, group_name]
378-
output_table[[paste0("Group.Stdev_(", group_name, ")")]] <- group_stdev[, group_name]
379-
}
372+
# Remove the 'group' column and transpose to match expected structure
373+
group_means <- as.data.frame(t(agg_means[-1]))
374+
group_stdev <- as.data.frame(t(agg_stdev[-1]))
375+
# Assign column names based on group names
376+
colnames(group_means) <- paste0("Group.Mean_(", group_names, ")")
377+
colnames(group_stdev) <- paste0("Group.Stdev_(", group_names, ")")
378+
# Add computed group means and standard deviations to output_table
379+
output_table <- cbind(output_table, group_means, group_stdev)
380380
```
381381

382382
```{r output-dge-related-files}

0 commit comments

Comments
 (0)