1

我在 Excel 中有这样的数据:

SO18318488 问题示例

我想像这样转换为(5 * 7)矩阵:

            莎拉·乔恩·雪莉杰克·乔·彼得·贝蒂
    书 1 1 0 0 0 0 0 0
    书 2 1 0 0 1 0 0 1
    书3 0 0 0 0 0 1 0
    书4 0 1 1 1 0 0 0
    书5 0 0 1 0 1 0 0

我能做些什么?

4

3 回答 3

1

从单元格 A2 开始,粘贴您的书籍列表以创建网格的左侧。复制您的 ID 列表,然后从单元格 B2 开始,通过选择特殊粘贴、转置来粘贴您的 ID 列表。这将创建矩阵的顶部和侧面。

将此公式粘贴到单元格 B2 中

=IF(ISERROR(FIND($A2,VLOOKUP(B$1,$K:$L,2,FALSE))),0,1)

(其中 $K:$L 是 id 的列表,属于。即示例数据中的第二列和第三列。只要您更新引用 $K:$L 以引用新位置,它们就可以在任何地方)

现在,复制单元格 B2,并粘贴矩阵的其余部分。

于 2013-08-19T16:38:45.620 回答
1

以防万一可以在另一本书的标题中找到书名(例如“The Ring”和“Fellowship of the Ring”),您可以在单元格 F2 中使用此公式并上下复制到单元格 L6:

=--ISNUMBER(SEARCH(","&$E2&",",","&SUBSTITUTE(VLOOKUP(F$1,$B$2:$C$8,2,FALSE),", ",",")&","))

其中 F1:L1 是名称列表,E2:E6 是书名列表

于 2013-08-19T16:50:15.627 回答
1

我的选择是重新排列数据以适应数据透视表。所以复制 ColumnC 并将特殊值粘贴到 ColumnD 中。然后将 ColumnD 中的空白替换为空(从 中删除空格book1, book2)。选择 ColumnD, Data > Data Tools - Text to Columns, Delimited, Comma 然后过滤 ColumnE 以选择非空白行并将 ColumnB 的可见部分(不包括标题)复制到 B9(或适合)和 ColumnE 的可见部分(不包括标题) 到 D9(或适合)。然后从 B1:D11 (或适合)创建您的数据透视表,如图所示(使用 ColumnD 为belong- 即belong2):

SO18318488 示例

于 2013-08-19T17:17:36.547 回答