I have a main dataframe called  main  and a subset of this dataframe called  main1 . I want to create a dataframe  main2  which is includes everything in  main  which is not  main1 . How would I do this?
            Asked
            
        
        
            Active
            
        
            Viewed 92 times
        
    1 Answers
0
            
            
        You should use anti_join from the tidyverse
> main<- data.frame(x1 = rnorm(10), x2 = runif(10), x3 = rpois(10, 2))
> main
           x1         x2 x3
1   1.4406206 0.30588109  2
2   0.4445457 0.92770941  2
3   0.3516765 0.33743271  3
4   1.1340182 0.01655045  3
5   0.9737873 0.88921373  0
6  -0.4238340 0.40776005  0
7   0.1655138 0.06214448  4
8  -1.5709535 0.31105756  0
9  -0.7058486 0.09526843  2
10 -0.9903269 0.36750970  2
> main1<- main[sample(1:nrow(main), 3), ]
> main1
          x1         x2 x3
5  0.9737873 0.88921373  0
4  1.1340182 0.01655045  3
9 -0.7058486 0.09526843  2
> main2<- anti_join(main, main1)
# Joining, by = c("x1", "x2", "x3")
> main2
          x1         x2 x3
1  1.4406206 0.30588109  2
2  0.4445457 0.92770941  2
3  0.3516765 0.33743271  3
4 -0.4238340 0.40776005  0
5  0.1655138 0.06214448  4
6 -1.5709535 0.31105756  0
7 -0.9903269 0.36750970  2
 
    
    
        Yannis Vassiliadis
        
- 1,719
- 8
- 14
