Size: a a a

R (язык программирования)

2020 June 16

PD

Pavel Demin in R (язык программирования)
EK479
Здравствуйте! Подскажите, пожалуйста.
Почему  в data.table значения не группируются по переменной ordernumber? мне нужен вывод: 100000 19000 (т.е значения стоимости с одинаковым ordernumber суммируется). А а у меня вывод как на фото. Что я делаю неправильно?
library(data.table)
sample.purchases <- data.table(price = c(100000, 6000, 7000, 5000000),
                              ordernumber = c(1,2,2,3),
                              quantity = c(1,2,1,-1),
                              product_id = 1:4)

sample.purchases[quantity>0][, price*quantity, by=ordernumber]
не хватает аггрегирующей функции.
попробуйте sum(price*quantity)
источник

E

EK479 in R (язык программирования)
Pavel Demin
не хватает аггрегирующей функции.
попробуйте sum(price*quantity)
спасибо!
источник

AS

Anton Silchenko in R (язык программирования)
Чуть оффтоп, контексте вопроса выше, почему не dplyr?
sample.purchases %>% 
 filter(quantity>0) %>%
 mutate(total = price*quantity) %>%
 group_by(ordernumber) %>%
 summarise_at(vars(total),sum)
источник

A

Andrey in R (язык программирования)
Anton Silchenko
Чуть оффтоп, контексте вопроса выше, почему не dplyr?
sample.purchases %>% 
 filter(quantity>0) %>%
 mutate(total = price*quantity) %>%
 group_by(ordernumber) %>%
 summarise_at(vars(total),sum)
Видимо, вопрошавший просто не хипстер
источник

AS

Anton Silchenko in R (язык программирования)
Andrey
Видимо, вопрошавший просто не хипстер
То что я бородатый с вейпом, в клетчатой рубашке а сзади меня стоит гироскутер еще ничего не значит! Даже обидно немного(
источник

A

Andrey in R (язык программирования)
Согласен, без подворотов нещитово
источник

AS

Anton Silchenko in R (язык программирования)
Andrey
Согласен, без подворотов нещитово
Вот и я о том же. Но кроме этого, отчего такой взгляд на dplyr?
источник

AP

Anton Pysanka in R (язык программирования)
наверное потому что так сформулирован вопрос))
"Почему  в data.table..."
источник

PD

Pavel Demin in R (язык программирования)
Anton Silchenko
Вот и я о том же. Но кроме этого, отчего такой взгляд на dplyr?
ну смотрите. человек написал пример кода на дт. это код в одну строчку - используемый чейн можно убрать, кста. раз человек уже написал на дт, и даже юзнул чейн, вероятно, он понимает, что происходит. это я к тому, что дплир часто представляется как более читаемая и понятная штука, чем дт - но тут человек сам написал на дт.
и вот приходите Вы и предлагаете человеку, который написал решение на дт в одну строчку, переписать это с помощью дплир в 5 строчек?
(я без негатива)
источник

AS

Anton Silchenko in R (язык программирования)
Pavel Demin
ну смотрите. человек написал пример кода на дт. это код в одну строчку - используемый чейн можно убрать, кста. раз человек уже написал на дт, и даже юзнул чейн, вероятно, он понимает, что происходит. это я к тому, что дплир часто представляется как более читаемая и понятная штука, чем дт - но тут человек сам написал на дт.
и вот приходите Вы и предлагаете человеку, который написал решение на дт в одну строчку, переписать это с помощью дплир в 5 строчек?
(я без негатива)
Я не то чтобы предлагаю свои пять строчек. Просто имхо data.table пакет от дядек с красными глазами в свитерах (раз уж мы пошли по стереотипам), для таких же дядек. И мне интересно почему предпочитают этот пакет относительно более понятного пусть и более громоздкого в плане синтаксиса, пакета dplyr. Это вкусовщина или есть прям киллер фича?
источник

А[

Александр [capsula]... in R (язык программирования)
Anton Silchenko
Я не то чтобы предлагаю свои пять строчек. Просто имхо data.table пакет от дядек с красными глазами в свитерах (раз уж мы пошли по стереотипам), для таких же дядек. И мне интересно почему предпочитают этот пакет относительно более понятного пусть и более громоздкого в плане синтаксиса, пакета dplyr. Это вкусовщина или есть прям киллер фича?
Вангую - потому что так сказали преподаватели на степике
источник

AP

Anton Pysanka in R (язык программирования)
просто кому что больше подходит под задачи. если мне нужно обработать быстро большой массив данных — выбираю data.table
источник

A

Andrey in R (язык программирования)
Anton Silchenko
Вот и я о том же. Но кроме этого, отчего такой взгляд на dplyr?
Ну там реально многие вещи бесконечно переписываются "чтобы по красоте было", причем красота в понимании Х.Уикема. В итоге лишние когнитивные усилия для конечного потребителя.
источник

PD

Pavel Demin in R (язык программирования)
Переслано от Alexander Semenov
Тогда уж так.
источник

AS

Alexander Semenov in R (язык программирования)
Anton Silchenko
Я не то чтобы предлагаю свои пять строчек. Просто имхо data.table пакет от дядек с красными глазами в свитерах (раз уж мы пошли по стереотипам), для таких же дядек. И мне интересно почему предпочитают этот пакет относительно более понятного пусть и более громоздкого в плане синтаксиса, пакета dplyr. Это вкусовщина или есть прям киллер фича?
Оооо, это я удачно зашёл =)
источник

R

R in R (язык программирования)
источник

A

Andrey in R (язык программирования)
Можно было затролить и дать ссыль на Пандас, вот уж где выход - всем выходам выход
источник

PU

Philipp Upravitelev in R (язык программирования)
Andrey
Можно было затролить и дать ссыль на Пандас, вот уж где выход - всем выходам выход
решил я тут импортировать csv на 3.5 гб в пандас при свободных 5гб... упал по памяти через несколько минут. data.table импортировал чуть меньше, чем за минуту.  :(
источник

AS

Alexander Semenov in R (язык программирования)
El Classico началось =)
источник

AS

Anton Silchenko in R (язык программирования)
Ну это уже слишком. Хотя. Интересно, а нет ли аналога "Вопросы и ответы" из BI, для r? Вот ещё бы это это натянуть на dtplyr. Ваще бы езда на велосипеде задом с веслом в зубах получилась бы =)
источник