Получить для каждой строки списка-столбца длину - PullRequest
2 голосов
/ 02 апреля 2020

Проблема: Я хочу узнать количество элементов в столбце списка (здесь y). Есть ли более эффективный и элегантный способ определить это с помощью purrr::map -функции? Это очень медленно при попытке применить это к объекту data.table с более чем 700 000 строк.

library(data.table)

dt <- data.table(
  x = seq(4),
  y = list(c(1, 2, 3), c(2, 3), c(5, 1), c(12, 90, 200))
)

dt[, class(y)]

## more efficient/elegant way?
dt[, purrr::map(y, length)]

1 Ответ

0 голосов
/ 02 апреля 2020

Вы можете сделать:

dt[, lengths(y)]

[1] 3 2 2 3
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...