Удаление пустых строк (а на списках точно быстрее?)
#АнатомияФункций – List.RemoveMatchingItems, List.RemoveNulls, List.Repeat, Record.FromList
Всем привет!
В чате задали вопрос про удаление пустых строк, а именно: является ли мышкоклацный код слишком навороченным:
Ответ – нет, вполне прозрачный и логичный код, достаточно универсальный.
Но вот если в таблице пустые строки содержат только null (а именно так было у автора вопроса), то действительно, можно и подсократить:
А сократив, стоит задуматься о вычислительной эффективности и, например, переписать так:
А ещё лучше так:
Ну а насколько лучше получился код и вообще, что тут к чему смотрите , как всегда, на Ютубе
Лайк, коммент, подписка приветствуются )))
Надеюсь, было полезно.
Всех благ!
@buchlotnik
#АнатомияФункций – List.RemoveMatchingItems, List.RemoveNulls, List.Repeat, Record.FromList
Всем привет!
В чате задали вопрос про удаление пустых строк, а именно: является ли мышкоклацный код слишком навороченным:
let
laiyuan = Excel.CurrentWorkbook(){[Name="biao"]}[Content],
jieguo = Table.SelectRows(laiyuan, each not List.IsEmpty(List.RemoveMatchingItems(Record.FieldValues(_), {"", null})))
in
jieguo
Ответ – нет, вполне прозрачный и логичный код, достаточно универсальный.
Но вот если в таблице пустые строки содержат только null (а именно так было у автора вопроса), то действительно, можно и подсократить:
let
laiyuan = Excel.CurrentWorkbook(){[Name="biao"]}[Content],
jieguo = Table.SelectRows(laiyuan,(j)=>List.RemoveNulls(Record.ToList(j))<>{})
in
jieguo
А сократив, стоит задуматься о вычислительной эффективности и, например, переписать так:
let
laiyuan = Excel.CurrentWorkbook(){[Name="biao"]}[Content],
liebiao = List.Buffer(List.Repeat({null},Table.ColumnCount(laiyuan))),
jieguo = Table.SelectRows(laiyuan,(j)=> Record.ToList(j)<> liebiao)
in
jieguo
А ещё лучше так:
let
laiyuan = Excel.CurrentWorkbook(){[Name="biao"]}[Content],
jilu = Record.FromList(List.Repeat({null},Table.ColumnCount(laiyuan)),Table.ColumnNames(laiyuan)),
jieguo = Table.SelectRows(laiyuan,(j)=>j<>jilu)
in
jieguo
Ну а насколько лучше получился код и вообще, что тут к чему смотрите , как всегда, на Ютубе
Лайк, коммент, подписка приветствуются )))
Надеюсь, было полезно.
Всех благ!
@buchlotnik