파워 쿼리의 열/행 관리

파워 쿼리의 열/행 관리

많은 양의 데이터가 포함된 .txt 파일이 있습니다. 다음과 같이 파워 쿼리에 로드했습니다.
[문자(A)를 데이터 행, 한 열 너비와 동일하게 설정]

A
B
C
D
E
A
B
E
A
E
A
B
C
D
E

등등...

이제 다음과 같이 보이도록 행과 열로 구성하고 싶습니다.

AAAA
BBEB
CE x C
D xx D
E xx E

"A" 값을 구분 기호로 사용하여 새 열로의 분리를 결정합니다. 또한 관련이 있는 경우 마지막 값은 항상 동일합니다(위의 "E").

이것이 가능한가?

답변1

개념적으로는 간단하지만 마지막 단계에서는 고급 편집기를 사용해야 합니다.

  • "A"로 시작하는 각 그룹에 대해 동일한 번호를 갖는 열을 만듭니다.
    • 인덱스 열 추가
    • 수식이 포함된 사용자 정의 열(명명됨 Grouper) 추가if [Column1]="A" then [Index] else null
    • 작성Grouper
  • 그루퍼의 그룹
    • "모든 행" 집계
  • 각 하위 테이블 열의 값을 목록으로 추출하는 또 다른 사용자 정의 열을 추가합니다.
  • Table.FromColumns해당 목록을 사용하여 함수를 사용하여 새 테이블을 만듭니다.
let

//Change next line to reflect actual data source
    Source = Excel.CurrentWorkbook(){[Name="Table26"]}[Content],

    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}}),
    #"Added Index" = Table.AddIndexColumn(#"Changed Type", "Index", 0, 1, Int64.Type),
    #"Added Custom" = Table.AddColumn(#"Added Index", "Grouper", each if [Column1]="A" then [Index] else null),
    #"Removed Columns" = Table.RemoveColumns(#"Added Custom",{"Index"}),
    #"Filled Down" = Table.FillDown(#"Removed Columns",{"Grouper"}),
    #"Grouped Rows" = Table.Group(#"Filled Down", {"Grouper"}, {{"Count", each _, type table [Column1=nullable text, Grouper=number]}}),
    #"Removed Columns1" = Table.RemoveColumns(#"Grouped Rows",{"Grouper"}),
    #"Added Custom1" = Table.AddColumn(#"Removed Columns1", "Columns", each [Count][Column1]),
    #"Removed Columns2" = Table.RemoveColumns(#"Added Custom1",{"Count"}),

    #"New Table" = Table.FromColumns(#"Removed Columns2"[Columns])

in

    #"New Table"

소스 데이터
여기에 이미지 설명을 입력하세요

결과
여기에 이미지 설명을 입력하세요

관련 정보