Closed kieroneil closed 4 years ago
@kieroneil , the author believes that this feature could be relevant but not of immediate priority. Following comments explain this further.
Background: The core of this package is data distribution and the sum of transactions need to follow the distribution(seasonality, cyclicality and trend) suggested by the user (example: yearly, quarterly, monthly).
Assumption: Transactions per day/month are assumed to be positively correlated with quantity sold.
Challenge: A new variable "quantity" needs to be thought through to ensure that it does not change this data distribution(as mentioned above) significantly.
Additional notes: Introduction of quantity entails price elasticity. The author with his experience in pricing analytics believes that this needs a separate version release in a distant future. This is more so because some pricing approaches use base price + margin to arrive at retail price (and then add a discount to it) while some others use demand related pricing. The former approach is widely used in manufacturing industry and the latter is widely used in e commerce industry.
Workaround: One way to handle such things is by way of assigning the transactions in the following manner. a. One could create a function similar to the buildPareto function in the package. b. This function could create an identifier called basket ID. c. This function could then assign the existing transaction IDs to basket ID following some approach similar to buildPareto function. d. This way, the transactions will add up to the distribution and there could be a basket with many quantities of many products. e. Such a basket ID could also be used for affinity based modelling such as market basket analysis or product recommendation models such as match box matching etc.
Based on the above reasons, the author would close this issue for now and could potentially pick up in future releases Thank you.
Maybe use the base price as a mean and allow the user to set the standard deviation. I'll work on this as time permits.