市场排名算法

我有一个包含市场信息的数据集。数据集中包含以下信息:市场的交易量、购买数量、所有日期的平均购买量、所有日期和所有市场的平均购买量,以及该市场相较于所有市场的平均价格低多少的百分比。

数据看起来像这样:

market volume  numPurchases   transDate  avgDailyPurchases  AvgDailyPurchasesAll  JFK    500     32             20190102   50                 75JFK    500     60             20190103   50                 75ATL    450     40             20190102   40                 75avgPercentCheaperThanAll.22.22.75

我想做的是对市场进行排名。顶级市场的定义是其avgDailyPurhcases相对于其交易量较高,并且avgPercentCheaperThanAll也较高。所以在上面的数据中,尽管JFK的avgDailyPurchases更多,但ATL比所有市场便宜很多,因此ATL是一个比JFK更好的市场。

我尝试使用了IMDB的公式来排名电影,但我用自己的变量表示方法,例如:

加权评级 (WR) = (v ÷ (v+m)) × R + (m ÷ (v+m)) × C v = 市场的交易量m = 列入列表所需的最低交易量R = avgDailyPurchasesC = AvgDailyPurchasesAll

这给了我一个几乎不错的列表,但它缺少了一个主要因素:avgPercentCheaperThanAll。我如何将这个因素添加到方程中以获得更好的结果?


回答:

在设计评级方程或任何方程之前,应考虑以下几点。

  1. 确定输入变量:可以理解为以下变量:

    avgDailyPurhcases, AvgDailyPurchasesAll, avgPercentCheaperThanAll, 交易量,一个交易量的最低门槛

  2. 归一化输入变量:从上面的数据可以推断出,交易量在数百范围内,平均每日购买量在数十范围内,而你的便宜变量在小数范围内。如果你直接在单一方程中使用这些变量而不进行归一化,那么你的评级将会偏向于主要由交易量驱动的。因此,你应该考虑对它们进行归一化,使用此链接了解更多关于归一化数据的信息。

  3. 分配权重:你希望avgPercentCheaperThanAllavgDailyPurchases变量有更高的优先级,这可以通过为变量分配适当的权重来实现。
  4. 定义关系:你应该考虑定义变量之间的关系,无论它们是直接相关的还是间接相关的,以便进行评级。
  5. 推导方程:最后一步将是推导出方程。从上面的步骤来看,这将非常容易,只需结合所有关系,然后你将得到一个如下类型的方程:

    评级 = [变量1的权重]*[变量1的归一化值] + ….依此类推。

通过上述步骤,你将能够推导出所需的方程,并且该方程将对你来说更加清晰,更能适应你的情况。否则,你可以从网上复制任何评级方程并根据需要进行修改,但每个方程都会给出不同的结果,当有更多输入变量时,你将无法控制它们。

希望这对你有帮助。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注