答案1
gns100 是正确的。您可以使用 Power Query(现在称为“获取和转换”)执行此操作。方法如下:
首先,将数据格式化为表格。将光标放在数据中的任意位置,然后按 Ctrl+T。
我已将表格重命名为“订单”。表格名称框位于“表格设计”选项卡最左侧的“属性”组中。
获取和转换有一个很棒的功能,称为“合并查询”。但要使用它,您需要一个查询。因此,将光标放在表格中的任意位置,然后单击功能区“数据”选项卡上“获取和转换数据”组中的“来自表格/范围”。
Power Query 窗口将打开。单击功能区上合并组中的“附加查询”下拉菜单,然后选择“将查询附加为新查询”。
在两个下拉菜单中选择“订单”,将连接类型更改为“内部(仅匹配的行)”,然后单击每个显示的表中的“订单”列。
因此,我们告诉 Power Query 使用订单列中的匹配项将订单连接到自身。单击“确定”后,它将如下所示:
单击第三列右上角的双箭头按钮以展开已连接的表。由于连接两侧的顺序列将相同,因此您可以取消选择它,如下所示:
展开行后,您会看到每个订单有 16 行。这些是订单中每篇文章与其他文章的组合。每个订单中有四篇文章,因此将每篇文章与其他文章组合会产生每篇文章四行。如果您按 Order=10 筛选最左边的列,您将看到以下内容:
清除“顺序”过滤器。还有最后一件事要做。我们对文章与其本身顺序相同的行不感兴趣。
因此,我们将添加一列,如果 article 等于 orders.article,则显示 TRUE。
点击功能区上的“添加列”>“自定义列”。您可以像这样配置它:
单击“确定”后,系统会将新列 (ArticleMatches) 添加到查询中。现在,您只需过滤该列为 FALSE 即可。由于该列并不那么有趣,您可以右键单击 ArticleMatches 并选择 RemoveColumn。这发生在过滤之后,因此它仍然有效!
差不多就是这样了。您只需单击“主页”选项卡上的“关闭并加载”,现在您就可以获得数据显示订单中哪篇文章与哪篇文章同时出现。
如果您想要更进一步计算频率,您可以返回到您的查询(右键单击它并选择“编辑”),然后单击 Power Query 窗口中的“分组依据”并配置对话框如下:
再次单击“主页”选项卡上的“关闭并加载”,您将获得结果!