Excel как инструмент для статистики

52

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

Тем не менее, статья МакКаллоу и Хайзера практически кричит о том, что вы получите неверные результаты - и, вероятно, также будете гореть в аду - если попытаетесь использовать Excel.

Является ли эта статья правильной или предвзятой? Авторы звучат так, будто ненавидят Microsoft.

Карлос Аккиоли
источник
5
Недавний анализ точности программного обеспечения электронных таблиц для статистических расчетов представлен в [Kellie B. Keeling and Robert J. Pavur (2011): Статистическая точность программного обеспечения для электронных таблиц, The American Statistician, 65: 4, 265-273] (в настоящее время можно загрузить бесплатно). по адресу amstat.tandfonline.com/doi/pdf/10.1198/tas.2011.09076 ). Результаты неоднозначны и, возможно, немного удивительны. Примечательным является значительное улучшение в расчетах распределения между Excel 2007 и Excel 2010 (что представляется более точным, чем Rили SAS).
whuber

Ответы:

45

Используйте правильный инструмент для правильной работы и используйте сильные стороны знакомых вам инструментов.

В случае с Excel есть несколько существенных проблем:

  • Пожалуйста, не используйте электронную таблицу для управления данными, даже если ваши данные поместятся в одну. Вы просто напрашиваетесь на неприятности, ужасные неприятности. Практически отсутствует защита от опечаток, массового смешения данных, усечения значений данных и т. Д. И т. Д.

  • Многие статистические функции действительно нарушены. T распределение является одним из них.

  • Графика по умолчанию ужасна.

  • В нем отсутствуют некоторые фундаментальные статистические графики, особенно графы и гистограммы.

  • Генератор случайных чисел - шутка (но, тем не менее, он по-прежнему эффективен в образовательных целях).

  • Избегайте высокоуровневых функций и большинства надстроек; они с ** р. Но это всего лишь общий принцип безопасных вычислений: если вы не уверены, что делает функция, не используйте ее. Придерживайтесь низкоуровневых (которые включают в себя арифметические функции, ранжирование, exp, ln, функции триггеров и - в определенных пределах - нормальные функции распределения). Никогда не используйте надстройку, которая создает графику: это будет ужасно. (Примечание: создать собственные вероятностные графики с нуля очень просто. Они будут правильными и легко настраиваемыми.)

В его пользу, однако, следующие:

  • Его основные численные расчеты настолько точны, насколько могут быть поплавки двойной точности. Они включают в себя некоторые полезные, такие как log gamma.

  • Довольно просто обернуть элемент управления в поля ввода в электронной таблице, что позволяет легко создавать динамические симуляции.

  • Если вам нужно разделить расчет с нестатистическими сотрудниками, большинству будет удобно работать с электронной таблицей, а с статистическим программным обеспечением - совсем нет, как бы дешево это ни было.

  • Легко написать эффективные числовые макросы, включая перенос старого кода на языке Фортран, который очень близок к VBA. Более того, исполнение VBA достаточно быстрое. (Например, у меня есть код, который точно вычисляет нецентральные t-распределения с нуля и три разных реализации быстрых преобразований Фурье.)

  • Он поддерживает некоторые эффективные симуляции и дополнения Монте-Карло, такие как Crystal Ball и @Risk. (Кстати, они используют свои собственные ГСЧ - я проверил.)

  • Непосредственность непосредственного взаимодействия с (небольшим набором) данных не имеет себе равных: она лучше, чем любой пакет статистики, Mathematica и т. Д. При использовании в качестве гигантского калькулятора с множеством хранилищ электронная таблица действительно вступает в свои права.

  • Хорошая EDA, использующая надежные и устойчивые методы, не легка, но после того, как вы сделали это один раз, вы можете быстро настроить ее снова. С помощью Excel вы можете эффективно воспроизвести все вычисления (хотя только некоторые из графиков) в книге EDA Тьюки, включая срединную полировку n-way таблиц (хотя это немного громоздко).

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

Whuber
источник
7
@whuber Хороший и удобный обзор плюсов и минусов!
ЧЛ
4
+1 красиво и сбалансировано. Мне особенно нравится пункт о «непосредственности непосредственного взаимодействия», который, как мне кажется, является самой большой выгодой для Excel (или действительно, для электронных таблиц). Декларативное программирование для масс - это объясняет, почему некоторые люди думают, что 80% мировой бизнес-логики написано в Excel (стоит указать программистам и статистикам, которые спорят о R v SAS или Java v C ++ и т. Д.).
АРС
2
Я слышал, что несколько лет назад Microsoft наняла несколько числовых аналитиков, чтобы исправить неисправные функции в Excel. Знаете ли вы, проблемы с Excel все еще существуют в версиях 2007 или 2010?
Джон Д. Кук
2
@Zach Например, используя Excel 2002, вычислите =TINV(2*p,df)значения p от 0,01 почти до 0 и сравните их с правильными значениями. (Я проверил с df в диапазоне от 2 до 32.) Ошибки начинаются с шестой значащей цифры и затем взрываются, когда p составляет около 1.E-5 или ниже. Несмотря на то, что эти значения p малы, они являются реалистичными значениями для тестирования, поскольку они имеют решающее значение для тестов множественного сравнения и для вычисления значений, связанных с распределением t, таких как нецентральное t.
whuber
2
Я думаю, что ваша первая точка пули должна иметь звёзды и стрелки, кричащие это. Электронные таблицы не содержат контрольного журнала, что очень важно, если вы собираетесь выполнять работу, на которую кто-то действительно полагается. R, напротив, напрямую не предоставляет контрольный журнал, но, поскольку он принимает команды, и вы можете сохранить команды для импорта, предварительной обработки, обработки, графика и т. Д., В отдельном файле вы можете отслеживать, что вы сделали с возьмите График # 1, и вы сможете воссоздать его с нуля, на случай, если у вас вдруг возникнут причины подвергнуть его сомнению
Уэйн
18

Интересная статья об использовании Excel в настройках биоинформатики:

Ошибочные идентификаторы: ошибки имени гена могут быть непреднамеренно внесены при использовании Excel в биоинформатике, BMC Bioinformatics, 2004 ( ссылка ).

В этой короткой статье описывается проблема автоматического преобразования типов в Excel (в частности, преобразования даты и числа с плавающей запятой). Например, имя гена Sept2 преобразуется в 2-Sept. Вы действительно можете найти эту ошибку в онлайн-базах данных .

Использование Excel для управления средними и большими объемами данных опасно. Ошибки могут легко закрасться без уведомления пользователя.

csgillespie
источник
6
Это тот аспект Excel, который меня бесит больше всего. Для хранения данных нужны явные типы данных, а не форматирование.
Мэтт Паркер
3
На самом деле, это что-то в программном обеспечении MS в целом, что меня раздражает: оно меняет ваш вклад в то, что, по вашему мнению, вы на самом деле имели в виду, и вы обычно даже не видите, что это происходит.
Карлос Аккиоли
@csgillespie (+1) Приятно слышать об Excel с этой точки зрения!
ЧЛ
6
Моя любимая ошибка произошла, когда Excel использовал тихое усечение полей при экспорте в другие форматы. В файле концентраций пестицидов в почве он преобразует значение 1 000 050 (необычайно токсичное) в 50 (почти несущественное), отсекая начальную цифру!
whuber
@Matt только бесит, если вы «храните» данные в Excel. Это отличная возможность при использовании Excel исключительно в качестве внешнего интерфейса для создания отчетов и создания диаграмм.
анонимный тип
11

Что ж, вопрос о том, является ли статья правильным или необъективным, должен быть легким: вы можете просто повторить некоторые из их анализов и посмотреть, получите ли вы те же ответы.

Маккалоу уже несколько лет разбирает разные версии MS Excel, и, видимо, MS не считает нужным исправлять ошибки, на которые он указывал несколько лет назад в предыдущих версиях.

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

С. Коласса - Восстановить Монику
источник
2
(+1) Вы приятно повторяете обсуждение Medstats о необходимости вести учет редактирования и анализа данных ( j.mp/dAyGGY )! Спасибо.
ЧЛ
Сохранение ваших «рабочих и тупиков» не сложнее с Excel, чем с R. Это просто вопрос того, как это сделать. Основная проблема с Excel связана с его сильными сторонами: слишком легко что-то непреднамеренно изменить. Но для EDA - фокус OP - мы редко, если вообще сохраняем все, что мы делаем. В конце концов, EDA должна быть интерактивной.
whuber
1
можно вести воспроизводимую запись ваших методов, если вы делаете это в VB, но фокус Excel не поощряет такое поведение.
Джеймс
7

Кстати, вопрос об использовании электронных таблиц Google вызвал противоречивые (и, следовательно, интересные) мнения по этому поводу. Используют ли некоторые из вас электронную таблицу Документов Google для ведения своей статистической работы и обмена ею с другими?

Я имею в виду более старую статью, которая не казалась такой пессимистичной, но она упоминается лишь незначительно в упомянутой вами статье: Килинг и Павур, Сравнительное исследование надежности девяти статистических программных пакетов (CSDA 2007 51: 3811). Но теперь я нашел твою на своем жестком диске. В 2008 году была также специальная проблема, см. Специальный раздел по Microsoft Excel 2007 , а позднее - в «Журнале статистического программного обеспечения: о числовой точности электронных таблиц» .

Я думаю, что это давняя дискуссия, и вы найдете различные статьи / мнения о надежности Excel для статистических вычислений. Я думаю, что существуют разные уровни обсуждения (какой анализ вы планируете делать, полагаетесь ли вы на внутренний решатель, существуют ли нелинейные термины, которые входят в данную модель и т. Д.), И могут возникнуть источники числовой неточности в результате правильных вычислительных ошибок или проблем с выбором дизайна ; это хорошо обобщено в

М. Альтман, Дж. Джилл и М. П. Макдональд, Численные проблемы в статистических вычислениях для социолога , Wiley, 2004.

Теперь для исследовательского анализа данных существуют различные альтернативы, которые предоставляют расширенные возможности визуализации, многовариантную и динамическую графику, например, GGobi, но см. Связанные темы в этой вики.

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

хл
источник
Мне нравится нюанс о «разных уровнях обсуждения».
whuber
7

Газеты и другие участники указывают на технические недостатки. Уубер делает хорошую работу, обрисовывая в общих чертах хотя бы некоторые свои сильные стороны. Я лично делаю обширную статистическую работу в Excel (проверка гипотез, линейные и множественные регрессии) и мне это нравится. Я использую Excel 2003 с емкостью 256 столбцов и 65 000 строк, которые могут обрабатывать почти 100% наборов данных, которые я использую. Я понимаю, что Excel 2007 значительно расширил эту емкость (миллионы строк).

Как упоминает Whuber, Excel также служит стартовой платформой для множества довольно выдающихся надстроек, которые все довольно мощные и простые в использовании. Я думаю о Crystal Ball и @Risk для симуляции Монте-Карло; XLStat для всесторонней статистики и анализа данных; Что лучше для оптимизации. И список продолжается. Это похоже на то, что Excel является эквивалентом IPod или IPad с огромным количеством невероятных приложений. Конечно, приложения Excel не из дешевых. Но за то, что они способны сделать, они, как правило, довольно выгодные сделки.

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

Sympa
источник
1
Спасибо за дополнительные пункты и за то, что поделились своей точкой зрения.
whuber
замечательные моменты, приятно слышать, что кто-то использует это правильно и приносит пользу.
анонимный тип
6

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

Zach
источник
6

Еще один хороший справочный источник, почему вы можете не использовать Excel:

Зависимость от электронных таблиц

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

Грег Сноу
источник
1

Excel может быть полезен как для исследовательского анализа данных, так и для анализа линейной регрессии с правильными плагинами. Существует ряд коммерческих продуктов, хотя большинство из них оставляют желать лучшего с точки зрения качества выходных данных (они не в полной мере используют возможности диаграмм Excel или возможность связываться с другими приложениями Office) и в целом они не так хороши, как могли бы быть для визуализации и представления данных. Они также, как правило, не поддерживают дисциплинированный подход к моделированию, при котором (помимо прочего) вы ведете хорошо документированный контрольный журнал для своей работы. Вот бесплатный плагин RegressIt, который решает многие из этих проблем: http://regressit.com, Он обеспечивает очень хорошую поддержку для исследовательского анализа (включая возможность генерировать параллельные графики временных рядов и матрицы диаграмм рассеяния, содержащие до 50 переменных), и позволяет легко применять преобразования данных, такие как запаздывание, регистрация и различие (которые часто не применяются). соответственно наивным пользователям регрессии), он предоставляет очень подробный вывод таблиц и диаграмм, который поддерживает лучшие практики анализа данных, и поддерживает рабочий лист контрольного журнала, который облегчает параллельное сравнение моделей, а также ведет учет того, какие модели были установлены в каком порядке. Это хорошее дополнение ко всему, что вы можете использовать, если вы имеете дело с многомерными данными, и по крайней мере часть вашей работы выполняется в среде Excel.

Боб Нау
источник