![在 Excel/Power Query 中转换不美观的调查数据](https://linux22.com/image/1659220/%E5%9C%A8%20Excel%2FPower%20Query%20%E4%B8%AD%E8%BD%AC%E6%8D%A2%E4%B8%8D%E7%BE%8E%E8%A7%82%E7%9A%84%E8%B0%83%E6%9F%A5%E6%95%B0%E6%8D%AE.png)
答案1
首先,由于过去 15 多年来一直从事调查数据工作,我谨对此表示同情。
首先,将数据减少为仅包含一行列标题。
在我的示例中,我在单元格 C9 中使用了此公式并将其复制到右侧:
="subID"&C1&"_"&C2
接下来,将光标放在新表中的一个单元格中,然后使用数据>获取和转换数据>从表/范围:
数据将显示在 Power Query 编辑器中。
接下来,选择最左边的两列,或者更一般地,选择您想要在每一行中重复的人口统计/筛选数据。
选择这些列后,使用“变换”>“取消透视列”>“取消透视其他列”:
这将产生以下结果:
如果您担心 subID1 没有出现而您需要它,即使它是空白的,也可以在原始数据的那些列中放置一个默认值(可能是 -1 表示“无答案”或某些表示“不适用”的默认值)
这种格式可能很有用,但由于您希望将答案标题作为四个单独的列,因此还需要几个步骤。
右键单击“属性”列并选择拆分列>按分隔符:
配置使分隔符为下划线:
此时,您应该具有如下所示的 Attribute.1 和 Attribute.2:
选择Attribute.2列并使用Transform>Pivot Column,并按如下方式配置:
希望最终结果正是您所需要的。您可以右键单击并根据需要重命名列,然后使用主页>关闭并加载将数据放回工作簿。