I have data with ID and multiple columns. I want to convert this data into a long type. And I want to remove duplicates. I want to apply his process on data with 1 Million rows is there any efficient method?
Asked
Active
Viewed 3,176 times
-2
-
1Have you looked at https://stackoverflow.com/questions/2185252/reshaping-data-frame-from-wide-to-long-format? – Peter Apr 15 '20 at 07:28
-
1Please don't add images of the data, add a reproducible example using `dput`. Please read the info about [how to ask a good question](http://stackoverflow.com/help/how-to-ask) and how to give a [reproducible example](http://stackoverflow.com/questions/5963269). – Ronak Shah Apr 15 '20 at 07:43
2 Answers
1
You cna use reshape2::melt (or the enhanced melt method on data.table objects):
reshape2::melt(df, id.vars = "cust_id")
You can also use tidyr::pivot_longer:
library(dplyr)
library(tidyr)
df %>%
pivot_longer(-cust_id)
linog
- 5,786
- 3
- 14
- 28
1
melt(dataframe, measure.vars = c("trans","Alt1","Alt2"), variable.name = "variable_names" , value.name = "value")
ps_st
- 33
- 6

