Aggregate daily sales

Hi R Community

I have some daily sales (multiple of the same date spread over different categories). I want to know the aggregated sales sum for each day.

Code:
ds <- data.frame(
saleDate = as.Date(df$Date),
saleAmount = df$Sales
)

class(ds$SaleAmount)
ds$saleAmount <- as.numeric(ds$saleAmount)
class(ds$saleAmount)

ds <- ds %>%
mutate(day = floor_date(ds$saleDate, "day"))

ds <- ds %>%
group_by(day) %>%
summarize(total = sum(saleAmount))

But I checked the aggregated amount for a date and it was not correct.

Any ideas?

Hi!

To help us help you, could you please prepare a reproducible example (reprex) illustrating your issue? Please have a look at this guide, to see how to create one:


Short Version

You can share your data in a forum friendly way by passing the data to share to the dput() function.
If your data is too large you can use standard methods to reduce it before sending to dput().
When you come to share the dput() text that represents your data, please be sure to format your post with triple backticks on the line before your code begins to format it appropriately.

```
( example_df <- structure(list(Sepal.Length = c(5.1, 4.9, 4.7, 4.6, 5, 5.4, 4.6, 
5, 4.4, 4.9), Sepal.Width = c(3.5, 3, 3.2, 3.1, 3.6, 3.9, 3.4, 
3.4, 2.9, 3.1), Petal.Length = c(1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 
1.4, 1.5, 1.4, 1.5), Petal.Width = c(0.2, 0.2, 0.2, 0.2, 0.2, 
0.4, 0.3, 0.2, 0.2, 0.1), Species = structure(c(1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L), .Label = c("setosa", "versicolor", "virginica"
), class = "factor")), row.names = c(NA, -10L), class = c("tbl_df", 
"tbl", "data.frame")))
```

It looks like you might have missing values. sum will return NA in that case. If you want to sum the non-missing values, try this.

ds <- ds %>%
  group_by(day) %>%
  summarize(total = sum(saleAmount, na.rm = TRUE))
``

This topic was automatically closed 21 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.