I want to subset data if every value in the row is greater than the respective row in a different data frame. I also need to skip some top rows. These previous questions did not help me, but it is related:
Subsetting a data frame based on contents of another data frame
Subset data using information from a different data frame [r]
> A
name1 name2
cond trt ctrl
hour 0 3
A 1 1
B 10 1
C 1 1
D 1 1
E 10 10
> B
name1 name2
cond trt ctrl
hour 0 3
A 1 1
B 1 10
C 1 1
D 1 1
E 1 1
I want this. Only rows where ALL values were greater in A than B:
name1 name2
cond trt ctrl
hour 0 3
E 10 10
I've tried these 3 lines:
subset(A, TRUE, select=(A[3:7,] > B[3:7,]))
subset(A, A > B)
A[A[3:7,] > B[3:7,]]
Thanks so much. Here is the code to generate the data:
A <- structure(list(name1 = c("trt", "0", "1", "10", "1", "1", "10"
), name2 = c("ctrl", "3", "1", "1", "1", "1", "10")), .Names = c("name1",
"name2"), row.names = c("cond", "hour", "A", "B", "C", "D", "E"
), class = "data.frame")
B <- structure(list(name1 = c("trt", "0", "1", "1", "1", "1", "1"),
name2 = c("ctrl", "3", "1", "10", "1", "1", "1")), .Names = c("name1",
"name2"), row.names = c("cond", "hour", "A", "B", "C", "D", "E"
), class = "data.frame")
############# Follow-up question asked 2/28/13
Error when subsetting based on adjusted values of different data frame in R