0

I am trying to place the columns of a data frame below each other. I found this post add one column below another in a data.frame in R but the solution does not work with my data frame and I don't know why.

This is my data frame.

structure(list(m1 = c(NA, 1, NA, NA, NA, NA, NA, NA, NA, NA, 
NA, NA, 20000, 900, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 33000, 
NA, NA, 180000, 2000, 500, 750, 500, 1100, 80000, 350, 500, 1800, 
NA, 58100, 180000, 40000, NA, NA, 700, 86000, 245000, NA, 245000, 
800, 4000, 800, 70000, 1700, NA, 3000, NA, 300, 700, 300, 1500, 
2900, 300, NA, 700, NA, 2000, 7500, 2000, 13200, 900, 2100, 12000, 
81000, 4000, 81000, NA, 40000, 15000, NA, 230, 400, 3000, 800, 
NA, 3400, NA, 1200, 25000, 3619, 25000, 11000, 11900, 5000, NA, 
1700, 12000, 3000, 3, 2123, 1600, 38000, 500, 500, 1000, 1800, 
NA, NA, 800, 12000, 1300, 21000, 750, 67000, 1800, 2800, 2700, 
NA, 7230, 2500, 1800, 500, NA, 1600, 500, 3000, 1500, 500, NA, 
NA, 1400, 4000, 1000, 2800, 82000, 13000, 3000, 16000, 1000, 
1100, 60000, 60000, 1600, 41000, 15000, 21600, 23200, 8900, 3700, 
1500, 50000), m2 = c(NA, 1, NA, NA, NA, NA, NA, NA, NA, NA, NA, 
NA, 20000, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 33000, 
NA, NA, 2500, 2000, 500, 850, 1200, 36200, 80000, 400, 500, 1800, 
NA, 58100, 1100, 4000, NA, NA, 700, 86000, 1100, NA, 1100, 1000, 
2500, 1000, 750, 1700, NA, 3000, NA, 250, 700, 100, NA, 750, 
300, NA, 1200, NA, 2000, 21000, 2000, 13200, 500, 39000, 70000, 
2300, 4000, 2500, NA, 40000, 15000, NA, 230, 400, 3000, 14, NA, 
400, NA, 1000, 25000, 3619, 25000, 3000, 40500, 5000, NA, 1700, 
35000, 5500, 3, 919, 210, 38000, 800, 1500, 1000, 1800, NA, NA, 
800, 12000, 5700, 21000, 350, 1200, 500, 2800, 5000, NA, 7232, 
500, 700, 1200, NA, 200, 600, 500, 1000, 500, NA, NA, 7800, 3500, 
15, 2800, NA, 15800, 3000, 16000, 65000, 1100, 5000, 5000, 1000, 
1200, 15000, 5400, 23200, 8900, 3700, 1500, 10000)), row.names = c(NA, 
-150L), class = c("tbl_df", "tbl", "data.frame"))
C. Toni
  • 133
  • 7

1 Answers1

0

You can use stack to do this:

df <- stack(df)
df$ind <- NULL
head(df)

#    values
# 1     NA
# 2      1
# 3     NA
# 4     NA
# 5     NA
# 6     NA
sm925
  • 2,648
  • 1
  • 16
  • 28