Как выполнить итерацию по функции в Google таблицах?

#google-sheets

#google-sheets

Вопрос:

На одном листе у меня есть таблица статистики, похожая на эту:

   A         B     C     D
1 Teams     MP    GF    GA
2 Team A    3     3     2
3 Team B    2     1     3
4 Team C    3     5     2
5 Team D    2     2     1
 

Затем у меня есть несколько формул, которые вычисляют ожидаемый результат между двумя командами, настроенными следующим образом:

   A        B                                               C              D              E
7 Teams    GF/G                                            GA/G           Avg            Exp Score
8 Team 1  =VLOOKUP(A8,$A$1:$D$5,3)/VLOOKUP(A8,$A$1:$D$5,2) =VLOOKUP(...)  =AVERAGE(...)  =B8-C9 D8
9 Team 2  =VLOOKUP(...)                                    =VLOOKUP(...)  =AVERAGE(...)  =B9-C8 D9
 

Затем у меня есть отдельный лист, в котором есть совпадения между командами, подобными этому:

   A       B        C
1 Date    Matchup  Exp Score
2 11/15   Team D   =FORMULA(
3 11/15   Team B   =FORMULA(
4 11/16   Team C   =FORMULA(
5 11/16   Team A   =FORMULA(
6 11/17   Team B   =FORMULA(
7 11/17   Team C   =FORMULA(
8 11/17   Team D   =FORMULA(
9 11/17   Team A   =FORMULA(
 

Мой вопрос в том, существует ли какая-то формула, которая может принимать команды в матче, копировать и вставлять их за кулисами в ячейки A8 и A9 и выдавать оценку опыта, которая будет генерироваться в E8 и E9. Это то, что можно сделать в Google Таблицах, или это нужно вручную скопировать и вставить в ячейки, а затем скопировать и вставить результаты туда, где я их хочу?

Комментарии:

1. поделитесь копией своего листа с примером желаемого результата

2. Я не уверен, как это сделать

3. выполните: i.imgur.com/G1RJKlg.png …затем: i.imgur.com/8paTFUz.png и вставьте сюда URL-адрес

4. Коннер, можете ли вы предоставить формулу, которую вы используете для своего среднего значения в столбце D, из вашего второго изображения выше? Это также может предоставить недостающую информацию для предложения ответа.

5. = СРЕДНЕЕ ЗНАЧЕНИЕ ($ C $ 2: $ C $ 5)

Ответ №1:

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

 =SUM(C2:C5) / SUM(B2:B5) /2
 

Итак, сумма всех забитых мячей делится на общее количество матчей (количество сыгранных игр любой командой, деленное на 2)? Это дает средние голы за игру, а затем ваши другие формулы добавляют положительную дельту к команде с более сильным GF / G и отрицательную дельту к команде с более слабым GF / G.

Кроме того, ваши данные могут быть недействительными. Разве общее количество голов, забитых всеми командами, не должно также равняться общему количеству голов, забитых всеми командами? Значит, сумма столбца C должна равняться сумме столбца D? Поэтому я немного изменил числа в столбце D.

Результат для ваших данных выглядит следующим образом: введите описание изображения здесь

где формула в E1:

 =ArrayFormula({"GF/G";C2:C5/$B2:$B5})
 

а в G1 есть:

 =ArrayFormula({"Avg Goals/G";SUM($C$2:$C$5) / (SUM(B2:B5)/2) })
 

Добавляя ваши совпадения и прогнозируемые результаты, я получаю это:
введите описание изображения здесь

где прогнозируемые результаты для всех команд в столбце I задаются по этой формуле в K2:

 =ArrayFormula(vlookup(I2:I7,$A$2:$G$5,5)
            - vlookup(J2:J7,$A$2:$G$5,5) 
              $G$2/2)
 

Обратите внимание, что я продублировал столбцы K: M в столбцах N: P, но показанные с десятичным знаком, чтобы показать, что среднее количество голов за игру по-прежнему равно 2,2, но с корректировками округления (без долей цели) это не всегда получается правильно.

Вот мой примерный лист.