Вечер добрый.
Для решения задачи на вход подается список состоящий из списков.
Прежде чем приступить к обработке, требуется провести проверку на "длину" каждого из списков, т.е. { {список1}, {список2}, ... , {список-n} } должны содержать одинаковое количество числовых значений.
Просмотрев функции работы со списками я накидал несколько способов, но так как не очень знаком с механизмами исполнения PQ хотелось бы узнать ваше мнение на скорость обработки, если например будет 10-20к значений в каждом списке, самих списков не очень много: 10-15.
Для решения задачи на вход подается список состоящий из списков.
Прежде чем приступить к обработке, требуется провести проверку на "длину" каждого из списков, т.е. { {список1}, {список2}, ... , {список-n} } должны содержать одинаковое количество числовых значений.
Просмотрев функции работы со списками я накидал несколько способов, но так как не очень знаком с механизмами исполнения PQ хотелось бы узнать ваше мнение на скорость обработки, если например будет 10-20к значений в каждом списке, самих списков не очень много: 10-15.
Код |
---|
let input = { {8.5, 9.5, 9.9, 9.0}, {0.65, 0.8, 0.8, 0.9}, {1.2, 1.3, 0.5, 0.6} }, number_of_items = List.Transform( input, each List.Count ( _ ) ), check_0 = List.AllTrue ( List.Transform( number_of_items, each _ = List.Average( number_of_items ) ) ), check_1 = List.Count( List.Distinct( number_of_items ) ) = 1, check_2 = List.MatchesAll( number_of_items, each _ = List.Max( number_of_items ) ), check_3 = List.StandardDeviation( number_of_items ) = 0, check_4 = List.Contains( { List.Zip( input ) }, null ), output = [check_average = check_0, check_distinct = check_1, check_matchesall = check_2, check_deviation = check_3, check_contains = check_4] in output |