Измерять столбец жалобы не существует, когда он делает

Внутренние две петли Флойда-Варшалла - это, по сути, матричное умножение с добавлением, замененным на min, и умножение заменяется на сложение. Вы можете делать умножение матрицы с помощью map-reduce, поэтому вы можете реализовать Floyd Warshall с | V | map-reduce.

На странице wikipedia на Floyd-Warshall:

1 let dist be a |V| × |V| array of minimum distances initialized to ∞ (infinity)
2 for each vertex v
3    dist[v][v] ← 0
4 for each edge (u,v)
5    dist[u][v] ← w(u,v)  // the weight of the edge (u,v)
6 for k from 1 to |V|
7    for i from 1 to |V|
8       for j from 1 to |V|
9          if dist[i][j] > dist[i][k] + dist[k][j] 
10             dist[i][j] ← dist[i][k] + dist[k][j]
11         end if

Внутренние две петли (i и j, строки с 7 по 11) структурно то же самое, что и матричное умножение, и вы можете адаптировать любое решение «матричное умножение на карте» для выполнения этого.

Внешний цикл (k) становится | V | Карта-уменьшает.

0
задан David B 13 July 2018 в 18:33
поделиться

1 ответ

Не жалуется, что их не существует. Однако похоже, что вы пытаетесь написать такую ​​меру, как вы бы рассчитали столбец. В какой-то мере вам нужно указать метод агрегирования, так как у вас нет контекста фильтра строк, который вы используете с вычисленным столбцом.

Вероятно, вам нужна мера, которая выглядит примерно так:

Total = SUMX(PBI_Purch_View, PBI_Purch_View[Price] * PBI_Purch_View[Quantity])

Если вы хотите, чтобы Total как вычисленный столбец, ваша формула будет работать нормально.

0
ответ дан Alexis Olson 17 August 2018 в 12:15
поделиться
  • 1
    странно, это было в этом формате в моем, так что в исходном силе bi document, поэтому я добавляю неправильный тип столбца – David B 13 July 2018 в 20:26