Добрый день.
С помощью PQ импортирую файл *csv. Это прогноз выступления игроков в Fantasy Premier League. В запросе переименовываю столбцы. Прогноз выдается на 8 туров. И всё хорошо, пока до конца чемпионата 8 или более туров. Если туров остается меньше, то и столбцов меньше. Пробую с помощью двух функций List.Generate создать списки внутри Table.RemoveColumns в зависимости от числа оставшихся туров. Получаю ошибку
Expression.Error: Неизвестный идентификатор. Использовалось ли условное обозначение [field] для _[field] вне выражения "each"?
Предполагаю, что как-то неверно обращаюсь с Index: PQ ожидает одно значение, а получает весь столбец [Index]. Или ошибка в коде где-то еще.
Может быть, в принципе предложите иной подход.
Спасибо.
С помощью PQ импортирую файл *csv. Это прогноз выступления игроков в Fantasy Premier League. В запросе переименовываю столбцы. Прогноз выдается на 8 туров. И всё хорошо, пока до конца чемпионата 8 или более туров. Если туров остается меньше, то и столбцов меньше. Пробую с помощью двух функций List.Generate создать списки внутри Table.RemoveColumns в зависимости от числа оставшихся туров. Получаю ошибку
Expression.Error: Неизвестный идентификатор. Использовалось ли условное обозначение [field] для _[field] вне выражения "each"?
Предполагаю, что как-то неверно обращаюсь с Index: PQ ожидает одно значение, а получает весь столбец [Index]. Или ошибка в коде где-то еще.
Может быть, в принципе предложите иной подход.
Спасибо.
Код |
---|
let fullfilepath = fnGetParameter("File Path fplreview"), tour1 = fnGetParameter("tour"), tour_max = if tour1 <= 31 then 7 else 38 - tour1, Источник = Csv.Document(File.Contents(fullfilepath),[Delimiter=",", Columns=22, Encoding=65001, QuoteStyle=QuoteStyle.None]), #"Повышенные заголовки" = Table.PromoteHeaders(Источник, [PromoteAllScalars=true]), #"Удаленные столбцы" = Table.RemoveColumns(#"Повышенные заголовки",{"SV", "ID"}), #"Переименованные столбцы" = Table.RenameColumns( #"Удаленные столбцы", { {"BV", "Cost"}, List.Generate( ()=> [Index=0], each [Index] <= tour_max, each [Index = [Index]+1], each Table.ColumnNames(#"Удаленные столбцы"){4+[Index]*2},"Min"&Text.From(tour1+[Index]) ), List.Generate( ()=> [Index=0], each [Index] <= tour_max, each [Index = [Index]+1], each Table.ColumnNames(#"Удаленные столбцы"){5+[Index]*2},"Pts"&Text.From(tour1+[Index]) ) } ) in #"Переименованные столбцы" |