Questão Como dobrar uma série horizontal em uma vertical


Eu tenho um conjunto de dados que está contido em um .csv planilha organizada assim:

name | 2006 | 2007 | 2008 | 2009
--------------------------------
foo  | 28   | 48   | 395  | 3829
bar  | 83   | 475  | 350  | 46

Eu preciso reorganizar esses dados para que fique assim:

name | date | value
-------------------
foo  | 2006 | 28
foo  | 2007 | 48
foo  | 2008 | 395
foo  | 2009 | 3829
bar  | 2006 | 83
bar  | 2007 | 475
bar  | 2008 | 350
bar  | 2009 | 46

Eu estava pensando que poderia fazer isso com uma fórmula de planilha, algo como row.valueEntry = inputSheet[row.index/4 + 1][row.index % 4 + 1], mas eu ainda não descobri como implementá-lo em linguagem de fórmula de planilha.

Existe uma maneira melhor de realizar esse tipo de reorganização?

(BTW, eu não tenho acesso ao MS Excel, como estou no Ubuntu, mas respostas que precisam de coisas específicas para o Excel ainda podem ser úteis para outros usuários.)


3


origem


Eu acho que a coisa para isso no Excel é uma "tabela dinâmica". Vou pensar em um simples código de planilha ... - apnorton
Parece que o LibreOffice também tem uma tabela dinâmica, mas não sei como é bom. - apnorton
@anorton Bem, acabei de fazer isso manualmente, 27.000 linhas, com uma cópia de bloco bastante repetitiva, mas bastante simples. Eu copiava uma coluna para uma segunda página, onde eu tinha as outras linhas de dados à esquerda e uma coluna para a direita configurada para que todas as células se igualassem ao cabeçalho da coluna colada, então copiei todas as linhas resultantes para uma terceira folha usando 'colar apenas valores'. - AJMansfield


Respostas:


Confira o seguinte ligação para obter instruções sobre como dinamizar tabelas no OpenOffice disponível para Linux.

Os seguintes ligação é para lidar com o mesmo resultado no MS Excel.


0