不,沒有簡單的方法,但它可以做到。 但是,我得到了不同的結果。我對您邏輯的解釋是:對於每個列組合,1列中每個常見單詞的出現次數必須乘以另一列出現次數。 這是我的結果:
![enter image description here](https://i.stack.imgur.com/vzp3A.png)
這是我的查詢代碼:
let
Source = Table1,
ColumnNames = Table.ColumnNames(Source),
Tabled = Table.FromColumns({ColumnNames}, type table[Columns = text]),
AddedColumns2 = Table.AddColumn(Tabled, "Columns2", each ColumnNames, type {text}),
ExpandedColumns2 = Table.ExpandListColumn(AddedColumns2, "Columns2"),
CommonWords =
Table.AddColumn(ExpandedColumns2,
"DistinctIntersect",
each if [Columns] = [Columns2]
then {}
else List.Distinct(List.Intersect({Table.Column(Source,[Columns]),
Table.Column(Source,[Columns2])}))),
AddedCount =
Table.AddColumn(CommonWords,
"Count",
(This) => List.Sum({0}&List.Transform(This[DistinctIntersect],
each List.Count(List.PositionOf(Table.Column(Source,This[Columns]),_,2)) *
List.Count(List.PositionOf(Table.Column(Source,This[Columns2]),_,2)))),
Int64.Type),
RemovedColumns = Table.RemoveColumns(AddedCount,{"DistinctIntersect"}),
PivotedColumn = Table.Pivot(RemovedColumns, List.Distinct(RemovedColumns[Columns2]), "Columns2", "Count")
in
PivotedColumn
謝謝@MarcelBeug。你的結果是正確的。我錯了......我錯了。我現在糾正了我的問題中的示例期望輸出表,只是因爲。你給我的東西可能不是很容易,但肯定比我想要的要好。 –