Какой текстовый формат я могу использовать для представления данных первоначально в электронной таблице Excel? - PullRequest
1 голос
/ 30 мая 2009

У меня есть таблица Excel, в которой многие люди оценивают рост и вес другого человека. Кроме того, некоторые люди оставили комментарии к обеим оценочным ячейкам, например «Эта оценка учитывает то-то и то-то».

Я хочу взять данные из электронной таблицы (я уже понял, как их проанализировать) и представить их в виде простого текстового файла, чтобы я мог легко разобрать их обратно в структурированный формат (в идеале с использованием Perl ).

Первоначально я думал использовать YAML:

Tom:
  Height:
    Estimate: 5
    Comment: Not that confident
  Weight:
    Estimate: 7
    Comment: Very confident
Natalia: ...

Но теперь я думаю, что это немного трудно читать, и мне было интересно, есть ли какое-нибудь текстовое табличное представление, которое было бы легче читать и все еще анализировать.

Что-то вроде:

PERSON      HEIGHT     Weight
-----------------------------
Tom         5          7
___START_HEIGHT_COMMENT___
    We hold these truths to be self-evident, that all men are created equal, that they are endowed by their Creator with certain unalienable Rights, that among these are Life, Liberty and the pursuit of Happiness.  That to secure these rights, Governments are instituted among Men, deriving their just powers from the consent of the governed [...]  
Wait, what's this project about again?
___END_HEIGHT_COMMENT___
___START_WEIGHT_COMMENT___
    We hold these truths to be self-evident, that all men are created equal, that they are endowed by their Creator with certain unalienable Rights, that among these are Life, Liberty and the pursuit of Happiness.  That to secure these rights, Governments are instituted among Men, deriving their just powers from the consent of the governed [...]  
Wait, what's this project about again?
___END_WEIGHT_COMMENT___

Natalia     2          4
John        3          3

Есть ли лучший способ сделать это?

Ответы [ 5 ]

3 голосов
/ 30 мая 2009

CSV ( Значения, разделенные запятыми ).

Вы даже можете сохранить его прямо в этот формат из Excel и прочитать его прямо в Excel из этого формата. Тем не менее, он также удобочитаем для человека и легко разбирается машиной.

1 голос
/ 30 мая 2009

Обычно, если я хочу получить данные из электронной таблицы в текстовом виде, я использую CSV (который Excel может читать и записывать). Его легко создавать и анализировать, а также он совместим со многими другими инструментами, но он не занимает высокое место в «удобочитаемой» диаграмме. Его можно прочитать, но это неудобно для всего, кроме простых файлов с одинаковой шириной поля.

XML является опцией, но YAML легче читать. Быть понятным человеку - одна из целей разработки YAML. Модуль YAML :: Tiny - это удобный и легкий модуль для типичных случаев.

Похоже, вы имеете в виду простую текстовую таблицу или, возможно, табличный формат с фиксированными столбцами. В CPAN есть несколько модулей, которые могут быть полезны: Text :: Table , Text :: SimpleTable , others ... Эти модули могут генерировать представление, которое легко читать, но разбирать его будет сложнее. (Они предназначены для представления данных, а не для их хранения и извлечения.) Возможно, вам придется создать собственный синтаксический анализатор.

0 голосов
/ 02 июня 2009

Существует также Config :: General для простых данных и семейства связанных классов.

0 голосов
/ 30 мая 2009

Нет причин, по которым вы не можете использовать XML, хотя я думаю, что в данном конкретном случае это излишне.

0 голосов
/ 30 мая 2009

Добавляя к ответу Роберта, вы можете просто поместить комментарии в дополнительные столбцы (через запятую будет выходной фильтр CSV в Excel и т. Д.). Подробнее о формате CSV: www.csvreader.com/csv_format.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...