GatGIS Asked: 2021-10-22 02:17:47 +0800 CST2021-10-22 02:17:47 +0800 CST 2021-10-22 02:17:47 +0800 CST 在 Excel / Power Query 中转换丑陋的调查数据 772 我从一些需要一些转换的调查中输入数据。我一直在玩 Power Query Transpose 功能,但我显然缺少一些重要的知识来进行所需的转换。输入数据如下图所示,subIDs可能无穷无尽。 所需的结果应如下图所示,可能会省略空答案,但这应该是这里最简单的部分。 任何帮助都感激不尽。抱歉,我没有说得很好,因为我不了解所需操作的条款。 microsoft-excel power-query 1 个回答 Voted Best Answer FlexYourData 2021-10-22T10:21:10+08:002021-10-22T10:21:10+08:00 首先,在过去 15 年多的时间里,我一直在使用调查数据,我想表达我的同情。 首先,将数据减少到只有一行列标题。 在我的示例中,我在单元格 C9 中使用了此公式并将其复制到右侧: ="subID"&C1&"_"&C2 接下来,将光标放在新表中的一个单元格中,然后使用 Data>Get & Transform Data>From Table/Range: 数据将显示在 Power Query 编辑器中。 接下来,选择最左边的 2 列,或者在更一般的意义上,选择您希望在每行与响应一起重复的人口统计/筛选数据。 选择这些列后,使用 Transform>Unpivot Columns>Unpivot Other Columns: 这应该会给你以下结果: 如果您担心 subID1 不会出现并且您需要它,即使它是空白的,那么在原始数据的这些列中放置一个默认值(可能 -1 表示“无答案”或某个默认值“不适用”) 这种格式可能很有用,但由于您希望将答案标题作为四个单独的列,因此还有一些步骤。 右键单击“属性”列并选择拆分列>按分隔符: 配置使分隔符为下划线: 此时,您应该拥有 Attribute.1 和 Attribute.2 ,如图所示: 选择 Attribute.2 列并使用 Transform>Pivot Column,并像这样配置它: 希望最终结果是您所需要的。您可以根据需要右键单击并重命名列,然后使用 Home>Close & Load 将数据放回工作簿。
首先,在过去 15 年多的时间里,我一直在使用调查数据,我想表达我的同情。
首先,将数据减少到只有一行列标题。
在我的示例中,我在单元格 C9 中使用了此公式并将其复制到右侧:
接下来,将光标放在新表中的一个单元格中,然后使用 Data>Get & Transform Data>From Table/Range:
数据将显示在 Power Query 编辑器中。
接下来,选择最左边的 2 列,或者在更一般的意义上,选择您希望在每行与响应一起重复的人口统计/筛选数据。
选择这些列后,使用 Transform>Unpivot Columns>Unpivot Other Columns:
这应该会给你以下结果:
如果您担心 subID1 不会出现并且您需要它,即使它是空白的,那么在原始数据的这些列中放置一个默认值(可能 -1 表示“无答案”或某个默认值“不适用”)
这种格式可能很有用,但由于您希望将答案标题作为四个单独的列,因此还有一些步骤。
右键单击“属性”列并选择拆分列>按分隔符:
配置使分隔符为下划线:
此时,您应该拥有 Attribute.1 和 Attribute.2 ,如图所示:
选择 Attribute.2 列并使用 Transform>Pivot Column,并像这样配置它:
希望最终结果是您所需要的。您可以根据需要右键单击并重命名列,然后使用 Home>Close & Load 将数据放回工作簿。