VM
Size: a a a
VM
I
VM
AG
I
AG
I
v
[x**2 for x in vals if x != 0]
list(map(lambda x: x**2, filter(lambda x: x != 0, vals)
v
IS
timeit.timeit("[{'a': i, 'b': 2 * i} for i in range(10000)]", number = 1000)
4.28375910000068s
Аналог на base R дает на порядок меньшеbench::mark(
m = lapply(1:1000, function(x){1:10000 %>% data.frame(a = ., b = 2 * .); NULL}),
iterations = 1
)
# A tibble: 1 x 13
expression min median itr/sec mem_alloc
<bch:expr> <bch:tm> <bch:tm> <dbl> <bch:byt>
1 m 407ms 407ms 2.46 115MB
А
это мы ещё даже data.table
не расчехлилиI
I
AG
IS
AK
IS
D
v
T
v