2015-06-22 22 views
-2

我有一个类似于r(数以千计的艺术品)中的以下数据集,还附加了屏幕截图。如何在excel中转​​置数据

A   B 

1    Pierre Bonnard 

Title   La rue, Orgue de Barbarie  
Medium   oil on canvas 
Year of Work  1911 
Size   Height 63.2 cm.; Width 89.8 cm. 
Sale of  Sotheby's New York: Friday, May 30, 2014 [Lot 00018] 
       Impressionist & Modern Art Including Russian Art 
Sold For 293,000 USD Premium 

2    Eugene Berman 

Title   Dormenas, statue et campanile 
Medium   oil on canvas 
Year of Work  1932 
Size   Height 92.1 cm.; Width 73 cm. 
Sale of  Sotheby's New York: Friday, May 30, 2014 [Lot 00086] 
       Impressionist & Modern Art Including Russian Art 
Sold For  12,500 USD Premium 

我想调换数据集类似以下:

artist title medium year.of.work size sale.of sold.for 
Pierre ... 
... 

我曾尝试在Excel中置的功能,但它不能正常工作。 enter image description here

回答

0

转置不会为你的数据做它。

不幸的是,你的一些数据值似乎遍布多个单元格,这使得它更成问题的了一下,但不是不可克服的。

让我们首先处理数据值始终在单个单元格中的情况。来自有限的样本数据,这些数据看起来像是艺术家,标题,中等,工作年份,大小,杂项,估计和出售的属性。

  1. 将您的输出列表中所需的所有标题放在现有数据下方或其他工作表中方便的行中。

  2. 接下来选择原始数据集的A列中的所有数据(从单元格A3到最后的 绘画的“已售出”)。

  3. 应用一个数据过滤器,以这种选择(数据选项卡上带,过滤 按钮)。

  4. 过滤通过点击向下箭头 细胞A3和,下拉出现时,取消选择“全选” 选项,然后在复选框列表中选择“标题” A列中选择。您的数据将现在进行筛选,以便 在A列中的所有条目都有价值“标题”和栏B表示 的画作的标题,从“香格里拉芸香,Orgue德 Barbarie”。

  5. 选择B列中显示所有标题和复制到剪贴板。将选择的内容粘贴到作为步骤1的一部分创建的“标题”标题正下方的单元格 。您现在在输出中获得了标题 列。

  6. 返回到下降A.下通过取消选中“标题”和例如选择选择不同的属性, “中”。 Col B现在将具有新属性的值。复制并粘贴到您的输出列表。重复此步骤,直到其值始终包含在单个单元格数据中的所有属性都已添加到输出列表中。

可以通过选择下拉列表中的所有数值来选择艺术家 - 可能最容易检查“全选”,然后取消选中非数字。或者,如果您觉得冒险,可以尝试使用显示在复选框列表上方的下拉选项中的数字过滤器。

分布在多个单元上的数据值需要处理,以便每个数据值都包含在一个单元中。这是相当直接的,但涉及使用几个公式。

  1. 确保“全选”选项对列中的数据滤波器的
  2. 在D3单元格中添加以下公式=AND(NOT(ISBLANK(B4)),ISBLANK(A4))
  3. 复制这个公式倒在列d所有小区(小区D3 downwawrds检查到原始数据的末尾)。列D中的值现在为TRUEFALSETRUE表示列B中的数据值在下面的单元格中继续。
  4. 在单元格C3中添加公式=B2并在单元格C4中添加公式=IF(D4,B4&C5,B4)。将C4中的公式复制到C列的其余部分,以便覆盖您的所有原始数据。列C中的值为0(如果列B中没有)或列B中的值(如果数据在下面的单元格中未继续)或列B中的值与任何继续单元格(如果列B中的值在下面的单元格中继续)。列C中的公式迎合了数据值可能分布在B列中超过2个单元格的可能性(尽管示例数据没有显示任何这样做)。

已经得到了你的数据转换成其形状如现在才差不多EXCEPT 在选择可以分布在多个细胞,如在以前的步骤4“描述”,选择从数据值的单元格数据类型列C而不是列B,并使用粘贴值,而不是使用粘贴值,而应用上一步骤5时粘贴。

如果您可以按照上面的说明进行操作,则可以先将公式放入列C和列D中,然后单独复制数据值从列C(记住粘贴值是必需的,而不仅仅是粘贴)。

在上面有一个基本的假设,每个属性(如标题,描述等)在您的输出中需要在列A中出现一次,每次只出现一次。这看起来就是有限的数据样本,但如果不是这样,那么输出数据将在行之间错位。例如如果图片5的标题在原始数据中缺失,那么在输出中显示为图片5的标题将是图片6的标题,图片6的标题将是图片7的标题等。

还有其他获得最终结果的方法,它使用公式来检测B列中每个数据项的位置,然后使用=INDIRECT=ADDRESS函数,但上面的方法可能更简单易懂。