答案1
以下是解决此问题的一种方法:
首先,我根据原始数据创建了一个查询(数据 > 获取和转换 > 从表/范围)。我选择了 5 个特征列,右键单击并选择“替换值”,然后配置对话框以将 V 替换为 1:
完成后,我将这些列的数据类型转换为整数(这样做的原因稍后会清楚)。
接下来,我关闭该查询并将其加载到工作簿中。
然后,我在原始数据上创建了一个新查询,但这次将其命名为 data_stacked,并在 5 个特征列上使用 Transform>Unpivot selected columns,如下所示:
然后我删除了“值”列,因为它实际上没有任何用处。然后我将该查询加载到工作簿中。
因此现在工作簿中有两个查询:
- 原始数据
- 数据堆叠
接下来我使用数据>获取和转换数据>获取数据>合并查询>合并并按如下方式配置它:
在合并时选择“确定”后,我展开了“orig_data”列并仅包含了特征列(数字):
然后,我将此合并查询加载到工作簿中并在其上创建了一个数据透视表。我将数据透视表配置为在行上有供应商、产品和成本,然后有 5 个值字段 - 每个数字特征列一个,其聚合设置为平均值。我将特征度量重命名为其原始列名(即特征 1 到 5),然后在“属性”字段上插入一个切片器。
最终结果是您可以按功能名称进行切片,但也可以保留原始表的整行并查看过滤产品中包含的其他功能:
我之所以绕远路使用合并功能,是因为我觉得即使只选择了其中一种,也能看到筛选产品的所有功能,这可能很有用。使用以成本为行轴的透视表可避免成本字段重复。