我是生物学家,我正在尝试使用R来分析我的数据。
我有我的盘子,我在sertans位置上种植细菌。所以我有两张桌子,我指出我的细菌正在增长(1)或不增长(0)。
# plate1
# K is a control column, A - E sample`s positions
K <- c(1, 0, 1, NA)
A <- c(1, 0, 1, 0)
B <- c(1, 0, 0, 1)
C <- c(0, 1, 0, 1)
D <- c(1, 0, 0, 1)
E <- c(1, 0, 0, 1)
plate1 <- data.frame(K, A, B, C, D, E) # creating a dataframe with all observations for the first plate
# plate2
K <- c(0, 0, 1, NA)
A <- c(1, 0, 0, 1)
B <- c(0, 1, 1, 0)
C <- c(1, 0, 1, 0)
D <- c(1, 0, 1, 0)
E <- c(0, 1, 0, 1)
plate2 <- data.frame(K, A, B, C, D, E) # creating a dataframe with all observations for the second plate.
我想问R两件事:
1)比较两个板(数据帧)的A-E列的所有变量
2)给我一个输出,其中1
的{{1}}(增长)位置和plate1
的{{1}}(无增长)位置。我希望它像一个新的0
,我plate2
和dataframe
取决于这两个位置是否符合我的条件
我确信解决方案应该非常简单,但我试图通过人们建议使用TRUE
函数或不同循环并且没有使用的静止。你能帮我完成这项任务吗?我可以对多个数据帧执行相同的操作吗?
答案 0 :(得分:2)
你可以做到
plate1==plate2
# K A B C D E
# [1,] FALSE TRUE FALSE FALSE TRUE FALSE
# [2,] TRUE TRUE FALSE FALSE TRUE FALSE
# [3,] TRUE FALSE FALSE FALSE FALSE TRUE
# [4,] NA FALSE FALSE FALSE FALSE TRUE
和
plate1==1 & plate2==0
# K A B C D E
# [1,] TRUE FALSE TRUE FALSE FALSE TRUE
# [2,] FALSE FALSE FALSE TRUE FALSE FALSE
# [3,] FALSE TRUE FALSE FALSE FALSE FALSE
# [4,] NA FALSE TRUE TRUE TRUE FALSE
如果您想要数据框,请将其包裹在as.data.frame
中。