将重复的列转换为一列中的多个条目

将重复的列转换为一列中的多个条目
Date,First,First,Second,Second
2022-01-01,one,two,three,four
2022-01-02,five,six,seven,eight

我怎样才能将像上面这样的表格(其中包含许多相同数量且相同标题的列(“第一”是两次列,“第二”是两次列)转换为像下面这样的表格,其中每个重复的列都成为具有重复独立变量的新行的一部分):

Date,First,Second
2022-01-01,one,three
2022-01-01,two,four
2022-01-02,five,seven
2022-01-02,six,eight

答案1

可能的解决方案之一:

您可以使用公式和自动填充选项。假设我们在 Sheet1 中有一个像您这样的表格:

Date,First,First,Second,Second
2022-01-01,one,two,three,four
2022-01-02,five,six,seven,eight

现在,我使用 Sheet2 中的表格如下:

Date, First, Second

在单元格 A2、B2、C2 中使用Indirect、、IFISEVEN自动填充ROWRounddown创建所需的表格:

在单元格中A2写入:

=INDIRECT("Sheet1!A"&ROUNDDOWN(ROW()/2,0)+1)

在单元格中B2

=INDIRECT(IF(ISEVEN(ROW()),"Sheet1!B"&ROUNDDOWN(ROW()/2,0)+1,""Sheet1!C"&ROUNDDOWN(ROW()/2,0)+1"))

最后在 Cell 中C2

=INDIRECT(IF(ISEVEN(ROW()),"Sheet1!D"&ROUNDDOWN(ROW()/2,0)+1,""Sheet1!E"&ROUNDDOWN(ROW()/2,0)+1"))

现在,您可以使用“自动填充”选项,选择 A2 到 C2 并将其拖动到所需单元格。最终结果是:

Date,First,Second
2022-01-01,one,three
2022-01-01,two,four
2022-01-02,five,seven
2022-01-02,six,eight

答案2

您还可以尝试 Excel Power Query。

首先通过“数据”选项卡 >“获取和转换数据”组 >“从表/范围”将数据导入 Power Query。

然后转到“主页”选项卡 >“变换组”>“分组依据”,选择“先进的“选项,按日期、第一和第二分组数据。选择获取”所有行“。在我的示例中,我将新列命名为“测试”,然后我们将得到一个带有文本“表格”的列。

在此处输入图片描述

单击标题为“测试”旁边的图标。选择:日期、第一2和第二3以展开。

在此处输入图片描述

转到左侧的查询列,复制“Table1”并复制它,我们将得到一个名为“Table1(2)”的相同查询。

在表 1 中,我们只保留日期、第一天和第二天的列。

在此处输入图片描述

在表1(2)中,我们只保留Test.Date,Test.First2和Test.Second3的列。

在此处输入图片描述

但我们需要修改标题,使其与 Table1 标题相同。

转到“主页”选项卡 > 合并组 > 附加查询 > 将查询附加为新查询,然后将这两个表附加为一个。

在此处输入图片描述

相关内容