создание списка в R с фреймом данных, имеющим общие значения в одном сопоставлении с другим - PullRequest
0 голосов
/ 12 июля 2020

У меня есть фрейм данных с двумя столбцами, я хочу создать дополнительный столбец / заменить второй столбец списком элементов, имеющих одинаковые коды моделей в первом столбце.

Я ищу код для выполнения это в R или SQL.

Входные данные:

 data<-structure(list(Model.codes = c(960468L, 960468L, 960531L, 960531L, 960531L, 960531L), Item.Ids = c(4072324L, 4072322L, 4072430L, 4072431L, 4072429L, 4072426L)), .Names = c("Model.codes", "Item.Ids" ), row.names = c(NA, 6L), class = "data.frame") 

Ожидаемый результат:

   Model.codes                          Ids_list
1:      960468                 [4072324,4072322]
2:      960531 [4072430,4072431,4072429,4072426]

1 Ответ

0 голосов
/ 12 июля 2020

Соответствует ли это вашим потребностям:

library(data.table)
setDT(data)
data[,.(Ids_list = paste0('[',paste0(Item.Ids,collapse=','),']')),by=Model.codes]

   Model.codes                          Ids_list
1:      960468                 [4072324,4072322]
2:      960531 [4072430,4072431,4072429,4072426]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...