Алгоритм ранжирования рынков - PullRequest
0 голосов
/ 31 мая 2019

У меня есть набор данных, который содержит информацию о рынках. Набор данных содержит следующее: объем рынка, количество покупок, средние покупки за все дни, средние покупки за все дни и по всем рынкам, а также средний процент того, насколько дешевле этот рынок по сравнению со всеми рынками.

Данные выглядят примерно так:

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

avgPercentCheaperThanAll
.22
.22
.75

То, что я хотел бы сделать, это ранжировать рынки. Верхний рынок определяется, где avgDailyPurhcases является высоким относительно его объема, а avgPercentCheaperThanAll также является высоким. Таким образом, в приведенных выше данных ATL будет лучшим рынком, чем JFK, хотя у JFK больше avgDailyPurchases, ATL намного дешевле, чем на всех рынках.

Я попытался использовать формулу IMDB, где они ранжируют фильмы, но вместо этого я использовал собственное представление переменных, например:

weighted rating (WR) = (v ÷ (v+m)) × R + (m ÷ (v+m)) × C 
v = volume of market
m = minimum volume required to be in the list
R = avgDailyPurchases
C = AvgDailyPurchasesAll

Это дает мне почти хороший список, но в нем отсутствует один важный фактор: avgPercentCheaperThanAll. Как я могу добавить это в уравнение, чтобы получить лучшие результаты?

1 Ответ

1 голос
/ 31 мая 2019

Мало точек, которые следует учитывать перед составлением рейтингового уравнения или любого другого уравнения.

  1. Определите входные переменные : Как можно понять, это может быть.

    avgDailyPurhcases, AvgDailyPurchasesAll, avgPercentCheaperThanAll, объем, минимальный порог для объема

  2. Нормализовать входные переменные : Из приведенных выше данных можно сделать вывод, что объем совершается в сотнях, среднесуточных покупках - в 10, а ваша более дешевая переменная - в десятичных дробях. Если вы попытаетесь использовать эти переменные в одном уравнении напрямую, без нормализации, то ваш рейтинг будет смещен и будет зависеть главным образом от коэффициента громкость . Поэтому вам следует рассмотреть возможность их нормализации, воспользуйтесь этой ссылкой, чтобы узнать больше Нормализация данных .

  3. Назначить веса : Вы хотите, чтобы avgPercentCheaperThanAll имел более высокий приоритет, чем avgDailyPurchases переменная, это будет достигается путем присвоения соответствующих весовых коэффициентов.
  4. Определите отношения : Вам следует подумать об определении отношений между вашими переменными, независимо от того, связаны они прямо или косвенно для вашего рейтинга.
  5. Вывод уравнения : Последним шагом будет вывод уравнения. Из вышеприведенного шага было бы очень просто объединить все отношения, после чего у вас останется уравнение типа:

    Рейтинг = [вес переменной 1] * [нормализованное значение переменной 1] + .... и т. Д.

Вы сможете вывести требуемое уравнение из вышеперечисленных шагов, и это уравнение будет более понятным для вас и более приспособленным к вашей ситуации. В противном случае вы можете скопировать любое рейтинговое уравнение в Интернете и изменить его в соответствии с вашими потребностями, но каждое уравнение даст разные результаты, и вы не сможете управлять ими, когда поступит больше входных переменных.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...