在 GraphPad Prism 中使用 R 样式数据
Use R style data in GraphPad Prism
我正在使用 R 进行数据分析,但我实验室的其他人都使用 GraphPad Prism,我也被要求使用该软件来展示我的数据。
在 R 中,我习惯于以“每行一个观察”的方式处理我的数据,所以我可能有看起来像
的数据
Sample Gene treatment fold change
1 GBP1 no IFN -0,11
2 GBP1 no IFN -0,05
3 GBP1 no IFN 0,02
4 GBP1 IFN 300
5 GBP1 IFN 200
6 GBP1 IFN 400
1 GBP2 no IFN -0,5
2 GBP2 no IFN -0,55
3 GBP2 no IFN 0,3
4 GBP2 IFN 100
5 GBP2 IFN 140
6 GBP2 IFN 200
虽然 Graphpad 期望数据结构如下
no IFN 1 no IFN 2 no IFN 3 IFN 1 IFN 2 INF3
GBP1 -0,11 -0,05 0,02 300 200 400
GBP2 -0,5 -0,55 0,3 100 140 200
所以我想知道是否有人知道将 R 样式数据导入 GraphPad Prism 8 的方法?我自己用 R 以可靠的方式转换它失败了。
最佳
尼克拉斯
您可以删除 Sample
列,为 treatment
列添加一个数字,然后使用 pivot_wider
获取宽格式数据。
library(dplyr)
df %>%
select(-Sample) %>%
group_by(Gene, treatment) %>%
mutate(treatment = paste0(treatment, row_number())) %>%
tidyr::pivot_wider(names_from = treatment, values_from = fold_change)
# Gene noIFN1 noIFN2 noIFN3 IFN1 IFN2 IFN3
# <chr> <chr> <chr> <chr> <chr> <chr> <chr>
#1 GBP1 -0,11 -0,05 0,02 300 200 400
#2 GBP2 -0,5 -0,55 0,3 100 140 200
数据
df <- structure(list(Sample = c(1L, 2L, 3L, 4L, 5L, 6L, 1L, 2L, 3L,
4L, 5L, 6L), Gene = c("GBP1", "GBP1", "GBP1", "GBP1", "GBP1",
"GBP1", "GBP2", "GBP2", "GBP2", "GBP2", "GBP2", "GBP2"), treatment = c("noIFN",
"noIFN", "noIFN", "IFN", "IFN", "IFN", "noIFN", "noIFN", "noIFN",
"IFN", "IFN", "IFN"), fold_change = c("-0,11", "-0,05", "0,02",
"300", "200", "400", "-0,5", "-0,55", "0,3", "100", "140", "200"
)), class = "data.frame", row.names = c(NA, -12L))
我正在使用 R 进行数据分析,但我实验室的其他人都使用 GraphPad Prism,我也被要求使用该软件来展示我的数据。 在 R 中,我习惯于以“每行一个观察”的方式处理我的数据,所以我可能有看起来像
的数据Sample Gene treatment fold change
1 GBP1 no IFN -0,11
2 GBP1 no IFN -0,05
3 GBP1 no IFN 0,02
4 GBP1 IFN 300
5 GBP1 IFN 200
6 GBP1 IFN 400
1 GBP2 no IFN -0,5
2 GBP2 no IFN -0,55
3 GBP2 no IFN 0,3
4 GBP2 IFN 100
5 GBP2 IFN 140
6 GBP2 IFN 200
虽然 Graphpad 期望数据结构如下
no IFN 1 no IFN 2 no IFN 3 IFN 1 IFN 2 INF3
GBP1 -0,11 -0,05 0,02 300 200 400
GBP2 -0,5 -0,55 0,3 100 140 200
所以我想知道是否有人知道将 R 样式数据导入 GraphPad Prism 8 的方法?我自己用 R 以可靠的方式转换它失败了。
最佳
尼克拉斯
您可以删除 Sample
列,为 treatment
列添加一个数字,然后使用 pivot_wider
获取宽格式数据。
library(dplyr)
df %>%
select(-Sample) %>%
group_by(Gene, treatment) %>%
mutate(treatment = paste0(treatment, row_number())) %>%
tidyr::pivot_wider(names_from = treatment, values_from = fold_change)
# Gene noIFN1 noIFN2 noIFN3 IFN1 IFN2 IFN3
# <chr> <chr> <chr> <chr> <chr> <chr> <chr>
#1 GBP1 -0,11 -0,05 0,02 300 200 400
#2 GBP2 -0,5 -0,55 0,3 100 140 200
数据
df <- structure(list(Sample = c(1L, 2L, 3L, 4L, 5L, 6L, 1L, 2L, 3L,
4L, 5L, 6L), Gene = c("GBP1", "GBP1", "GBP1", "GBP1", "GBP1",
"GBP1", "GBP2", "GBP2", "GBP2", "GBP2", "GBP2", "GBP2"), treatment = c("noIFN",
"noIFN", "noIFN", "IFN", "IFN", "IFN", "noIFN", "noIFN", "noIFN",
"IFN", "IFN", "IFN"), fold_change = c("-0,11", "-0,05", "0,02",
"300", "200", "400", "-0,5", "-0,55", "0,3", "100", "140", "200"
)), class = "data.frame", row.names = c(NA, -12L))