how would you condense a data frame into a few rows?

Does this work:

data.frame(lapply(dat, function(x) x[!is.na(x)]))
  Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1          5.1         3.5          1.4         0.2  setosa
2          4.6         3.2          1.5         0.2  setosa

Data used:

dat
# A tibble: 10 x 5
   Sepal.Length Sepal.Width Petal.Length Petal.Width Species
          <dbl>       <dbl>        <dbl>       <dbl> <chr>  
 1          5.1        NA           NA          NA   NA     
 2         NA           3.5         NA          NA   NA     
 3         NA          NA            1.4        NA   NA     
 4         NA          NA           NA           0.2 NA     
 5         NA          NA           NA          NA   setosa 
 6          4.6        NA           NA          NA   NA     
 7         NA           3.2         NA          NA   NA     
 8         NA          NA            1.5        NA   NA     
 9         NA          NA           NA           0.2 NA     
10         NA          NA           NA          NA   setosa 

CLICK HERE to find out more related problems solutions.

Leave a Comment

Your email address will not be published.

Scroll to Top