R и SPSS разница

Вскоре я буду анализировать огромное количество данных, связанных с сетевым трафиком, и предварительно обработаю данные, чтобы проанализировать их. Я обнаружил, что R и SPSS являются одними из самых популярных инструментов для статистического анализа. Я также буду создавать довольно много графиков и диаграмм. Поэтому мне было интересно, в чем основная разница между этими двумя программами.

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


person sfactor    schedule 24.09.2010    source источник


Ответы (12)


Я работаю в компании, которая использует SPSS для большей части нашего анализа данных, и по ряду причин - я начал пытаться использовать R для все большего и большего количества собственных анализов. Некоторые из самых больших различий, с которыми я столкнулся, включают:

  1. Вывод таблиц - в SPSS есть базовые таблицы, общие таблицы, настраиваемые таблицы и т. Д., Которые выводятся в эту изящную программу просмотра данных или как там она ее называет. Их можно относительно легко перенести в документы Word или таблицы Excel для дальнейшего анализа / презентации. Эквивалентная функция в R включает в себя изучение LaTex или использование odfWeave, Lyx или чего-то подобного.
  2. Маркировка данных -> SPSS довольно хорошо справляется с метками переменных и метками значений. Я не нашел надежного решения для R для выполнения той же задачи.
  3. Вы упомянули, что собираетесь писать сценарии для большей части своей работы, и лично я считаю синтаксис сценариев SPSS абсолютно ужасающим до такой степени, что я перестал работать с SPSS, когда это возможно. Синтаксис R кажется гораздо более логичным и более точно соответствует стандартам программирования, и существует очень активное сообщество, на которое можно положиться, если у вас возникнут проблемы (например, SO). Я не нашел хорошего сообщества SPSS, чтобы задавать вопросы, когда я сталкиваюсь с проблемами.

Другие указали на некоторые большие различия в стоимости и функциональности программ. Если вам нужно сотрудничать с другими, их уровень комфорта с SPSS или R должен играть важную роль, поскольку вы не хотите быть единственным в своей группе, кто может работать или редактировать сценарий, который вы написали в будущем.

Если вы собираетесь изучать R, этот пост на веб-сайте обмена статистикой содержит множество отличных ресурсов для изучения R: https://stats.stackexchange.com/questions/138/resources-for-learning-r

person Chase    schedule 24.09.2010
comment
1. Для небольших таблиц я обычно просто копирую и вставляю вывод экрана в R прямо в Excel, а затем вызываю «текст в столбец», в качестве альтернативы вы можете использовать write.csv (или csv2) в таблице. (или, может быть, вы имели в виду автоматические отчеты?). 2. В пакете Hmisc есть метки переменных, но метки значений предназначены для факторов. Это хорошо сделано во внешнем пакете, если вы должны были импортировать набор данных SPSS (или Stata), в результирующих данных R сохраняется информация о маркировке из оригинала. - person eyjo; 24.09.2010
comment
@eyjo - автоматическая отчетность - понятие относительное. Наш текущий рабочий процесс включает в себя: 1. Извлечение данных из SQL в SPSS, 2. Использование сценария VB, который просматривает наши опросы и автоматически извлекает метки переменных и значений, редактирует их и применяет к набору данных SPSS. 3. Воспользуйтесь другим скриптом, который генерирует таблицы SPSS в желаемом нам формате. 4. Экспорт в Word и Excel для дальнейшей постобработки, с которой не справится SPSS. 5. Сделайте клиентское приложение в формате .DOC или .PDF. Я бы ПОЛЮБИЛ, если бы R заменил SPSS - ›Word часть этого. В идеале рабочий процесс мог бы быть SQL - ›R / Sweave -› Конечный продукт. - person Chase; 24.09.2010
comment
Да, в моей компании есть группы, которые запланировали запуск сценариев R, извлекают данные из баз данных SQL, обрабатывают их, генерируют файлы Sweave PDF и отправляют результаты по электронной почте соответствующим людям. Есть некоторые проблемы с R и некоторыми базами данных на некоторых архитектурах, но вы не сможете достичь такого уровня автоматизации только с помощью SPSS! - person Harlan; 24.09.2010
comment
@Chase: Понятно, это немного более автономные шаги, чем я привык. Моя работа в основном академическая, в основном есть несколько уникальных результатов, с которыми я работаю. Но мой консалтинг сделал работу с R более автономной по сравнению с рабочим процессом SPSS, который он заменил. - person eyjo; 25.09.2010
comment
@Chase: я не понимаю, почему это нельзя сделать только с помощью R. Я разработал несколько специальных инструментов для компаний, которые делают то же самое: получают данные из SPSS или автоматически извлекают данные из MySQL и применяют метки / имена переменных (из другая таблица MySQL из тела онлайн-опроса HTML) в столбцы, генерирует таблицы с требуемым форматом и экспортирует их как файл odt, который можно открыть в любом MsWord (2007+) или OOWriter. Вывод можно легко тематизировать (заголовок, цвета, изображения, шрифт, поля таблицы и т. Д.). Это может потребовать много работы (тем более с графическим интерфейсом), но в конечном итоге может окупиться. - person daroczig; 17.01.2011
comment
@daroczig - Вы только что обрисовали в общих чертах рабочий процесс, который я пытаюсь выполнить с помощью R и связанных с ним инструментов! Мне просто нужно найти время, когда я могу сесть и обдумать детали. Это действительно часть уравнения odfWeave / Sweave, которую я пока не очень хорошо понимаю. Мы платим непомерную сумму в виде лицензионных сборов SPSS за очень тривиальное использование SPSS ... и SPSS не очень хорош в том, о чем мы пытаемся его просить. Приятно знать, что существуют существующие и работающие решения! - person Chase; 17.01.2011
comment
@Chase: пакет odfWeave очень хорошо документирован, ищите formatting.odt и его вывод в исходных кодах пакета (odfWeave/inst/examples). Также: odfWeave может быть лучшим выбором, чем Sweave, поскольку клиенты обычно хотят получать редактируемую версию отчетов. Дайте мне знать, если вы застряли где-нибудь в схеме / реализации. - person daroczig; 17.01.2011
comment
FWIW теперь, 4 года спустя, экспорт в MS Word теперь очень прост, используя один щелчок кнопки в Rstudio. blog.rstudio.org/2014/06/18/r-markdown -v2 и rmarkdown.rstudio.com - person Rasmus Larsen; 28.05.2015

Вот кое-что, что я недавно разместил в списке рассылки R-help, но я думаю, что он дает хороший общий обзор общей разницы между R и SPSS:

Когда я говорю об удобстве использования компьютерного программного обеспечения, мне нравится проводить аналогию между автомобилями и автобусами:

Автобусы очень просты в использовании, вам просто нужно знать, на какой автобус сесть, где сесть и где выйти (и вам нужно заплатить за проезд). С другой стороны, автомобили требуют гораздо больше работы, вам нужно иметь какой-то тип карты или направлений (даже если карта находится в вашей голове), вам нужно время от времени заправлять бензин, вам нужно знать правила дорога (иметь какое-либо водительское удостоверение). Большим преимуществом автомобиля является то, что он может доставить вас в множество мест, куда не ходит автобус, и он быстрее для некоторых поездок, которые требуют пересадки между автобусами.

Используя эту аналогию, программы, такие как SPSS, являются шинами, простыми в использовании для стандартных вещей, но очень неприятными, если вы хотите сделать что-то, что еще не запрограммировано.

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

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

Существуют графические интерфейсы для R, которые немного упрощают его использование, но также ограничивают функциональность, которую можно легко использовать. В SPSS действительно есть сценарии, которые выводят его за рамки простой шины, но общая философия SPSS направляет людей к графическому интерфейсу, а не к сценариям.

person Greg Snow    schedule 24.09.2010
comment
Это самая блестящая аналогия, которую я когда-либо читал. С этого момента я использую его для множества различных сред программирования. Спасибо. - person Jefferey Cave; 15.05.2015

Первоначальный рабочий процесс для SPSS включает обоснование написания большой жирной проверки. R находится в свободном доступе.

В R есть единый язык для «написания сценариев», но не думайте об этом так, R на самом деле является языком программирования со встроенными функциями обработки данных, статистики и графики. SPSS имеет «Синтаксис», «Скрипты» и является также можно использовать скрипты на Python.

Еще один важный момент заключается в том, что SPSS сжимает свои данные в структуру таблицы в виде крупноформатной таблицы. Работа с другими структурами данных, вероятно, очень сложна, но естественно приходит в R. Я бы не знал, с чего начать обработку данных типа сетевого графа в SPSS, но есть пакет, чтобы сделать это для R.

Кроме того, с помощью R вы можете интегрировать свой рабочий процесс с отчетностью с помощью Sweave - вы пишете документ со встроенными фрагментами кода R, который генерирует графики или таблицы, запускаете файл через систему и получаете отчет в виде PDF-файла. Отлично подходит, когда вы хотите составлять еженедельный отчет или когда вы выполняете основную работу, а затем начальник предоставляет вам обновленный набор данных. Повторно запустите, перечитайте, готово.

Но знаете, ваш звонок ...

person Spacedman    schedule 24.09.2010
comment
Существует бесплатный пакет в стиле SPSS с открытым исходным кодом, который называется PSPP ... Of Конечно, я полагаю, это пострадает от всех ваших комментариев. - person naught101; 08.06.2012
comment
Функциональность PSPP довольно проста. - person SmallChess; 11.06.2015

Ну а ты приличный программист? Если да, то стоит изучить R. Вы можете делать больше со своими данными, как с точки зрения манипулирования, так и с точки зрения статистического моделирования, чем с помощью SPSS, и ваши графики, вероятно, тоже будут лучше. С другой стороны, если вы никогда раньше не программировали или если идея потратить несколько месяцев на то, чтобы стать программистом, вас пугает, вы, вероятно, получите больше пользы от SPSS. Уровень вещей, который вы можете делать с R, не углубляясь в его мощь как полноценного языка программирования, вероятно, не оправдывает усилий.

Есть еще вариант - сотрудничать. Вы знаете кого-нибудь, с кем можете поработать над своим проектом (вы не говорите, академический он или отраслевой, но в любом случае ...), кто хорошо знает R?

person Harlan    schedule 24.09.2010
comment
Я не знаю об этом, я перешел с SPSS на R без какого-либо опыта программирования, и, хотя это заняло время, я стал на порядки более продуктивным, чем был. Один только Sweave сэкономил мне как минимум два месяца на форматирование документов. - person richiemorrisroe; 27.11.2011

Здесь есть интересное (и достаточно справедливое) сравнение ряда инструментов статистики.

http://anyall.org/blog/2009/02/comparison-of-data-analysis-packages-r-matlab-scipy-excel-sas-spss-stata/

person Richie Cotton    schedule 24.09.2010

Я работаю с обоими в компании и могу сказать следующее:

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

Тем не менее, я считаю R лучше почти во всех остальных смыслах:

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

На это часто не обращают внимания, но R также имеет множество функций для взаимодействия между командами (интеграция github с RStudio и простая сборка пакетов с помощью devtools).

На самом деле, если все в вашей организации знают R, все, что вам нужно, - это поддерживать базовый пакет на github, чтобы делиться всем. Это, конечно, не норма, поэтому я думаю, что SPSS, хотя и худший продукт, все же имеет рынок.

person eflores89    schedule 29.07.2015

У меня нет данных для этого, но по своему опыту могу сказать вам одно:

SPSS намного медленнее, чем R. (И с большим количеством, я действительно имею в виду очень много)

Величина разницы, вероятно, такая же большая, как разница между C ++ и R .

Например, мне никогда не приходилось ждать дольше пары секунд в R. Используя SPSS и аналогичные данные, у меня были вычисления, которые занимали больше 10 минут.

В качестве не имеющего отношения к делу примечания: на мой взгляд, в недавнем обсуждении скорости R этот момент был каким-то образом упущен из виду (то есть сравнение с SPSS). Более того, я удивлен, как эта дискуссия на какое-то время возникла и снова молча исчезла.

person Henrik    schedule 24.09.2010
comment
у вас есть данные для этого? Я хотел бы сравнить такие вещи, поскольку я всегда находил SPSS быстрее, чем R для одних и тех же процессов. - person richiemorrisroe; 27.11.2011
comment
Я обнаружил, что SPSS намного быстрее R (намного), когда дело доходит до стандартных процедур. Например, попробуйте моделирование смешанных эффектов в R и SPSS. - person KarthikS; 27.04.2016

Выше есть несколько отличных отзывов, но я постараюсь предоставить свои 2 цента. Мой отдел полностью полагается на SPSS в нашей работе, но в последние месяцы я прилагаю сознательные усилия, чтобы изучить R; частично по причинам, перечисленным выше (скорость, обширные структуры данных, доступные пакеты и т. д.)

Тем не менее, вот несколько вещей, которые я усвоил в процессе:

  1. Если у вас нет опыта программирования, я думаю, что создание сводных таблиц в CTABLES уничтожает все доступные параметры в R. На данный момент мне неизвестен пакет, который может реплицировать то, что можно создать с помощью настраиваемых таблиц.

  2. SPSS действительно работает медленнее при написании сценариев, и да, синтаксис SPSS ужасен. Тем не менее, я обнаружил, что сценарии в SPSS всегда можно улучшить, но с умеренным использованием команды EXECUTE.

  3. SPSS и R могут взаимодействовать друг с другом, хотя кажется, что это один способ (только при использовании R внутри SPSS, а не наоборот). Тем не менее, я обнаружил, что от этого мало пользы, кроме случаев, когда я хочу использовать ggplot2 или другие передовые методы управления данными. (Я презираю макросы SPSS).

  4. Я давно чувствовал, что работа по «отчетности», созданная в SPSS, намного уступает другим решениям. Как упоминалось выше, если вы сможете использовать LaTex и Sweave, вы будете очень довольны своими эффективными рабочими процессами.

  5. Я смог провести расширенный анализ, используя OMS в SPSS. Почти все можно направить в новый набор данных, но я обнаружил, что большинство пользователей SPSS не используют эту функцию. Кроме того, при просмотре примеров в R это кажется «проще», чем использование OMS.

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

person Btibert3    schedule 24.09.2010
comment
Похоже, что мы подошли к R и изучали R по многим из тех же причин, мне было бы интересно услышать еще несколько ваших мыслей об этом переходе SPSS - ›R, который вы, ребята, делаете. Я также заметил, что вы в Бостоне, а я всего в нескольких часах езды в Ганновере. Вы что-нибудь сделали с группой пользователей R из Новой Англии? Похоже, они встречаются в Бостоне ... - person Chase; 24.09.2010
comment
Я увязал на работе, но мне очень хотелось поехать. Я только начинаю с R и пытаюсь определить способы, которыми моя команда и я можем использовать этот инструмент. Моя отрасль широко использует SPSS, но по мере того, как я становлюсь более знакомым с различными инструментами / методами, я вижу необходимость изучить другие возможности, хотя бы для того, чтобы эффективно обрабатывать специальные запросы данных. Не стесняйтесь обращаться ко мне, чтобы узнать о моих мыслях и опыте перехода. - person Btibert3; 05.10.2010

SPSS предоставляет графический интерфейс для простой интеграции существующих программ R или разработки новых. Для получения дополнительной информации см. Сообщество SPSS на сайте IBM Developer Works.

person BI_Nerd    schedule 25.11.2013

@Henrik, я выполнил ту же задачу, о которой вы упомянули (C ++ и R) на SPSS. И оказалось, что на этом SPSS быстрее R. В моем случае SPSS примерно. В 7 раз быстрее. Я удивлен этому.

Вот код, который я использовал в SPSS.

data list free
 /x (f8.3).
begin data
1
end data.

comp n = 1e6.

comp t1 = $time.

loop #rep = 1 to 10.
comp x = 1.
loop #i=1 to n.
comp x = 1/(1+x).
end loop.
end loop.

comp t2 = $time.

comp elipsed = t2 - t1.

form elipsed (f8.2).

exe.
person djhurio    schedule 17.01.2011
comment
Если хотите сравнивать, сравнивайте разумные вещи. Этот тест - не лучший вариант. Циклов for в R в значительной степени можно избежать, и их тоже следует избегать. Мой опыт похож на Хенрикса в большинстве задач. Кроме того, со статистической точки зрения и SAS, и R работают лучше. Вы когда-нибудь пробовали делать односторонний Т-тест в SPSS? - person Joris Meys; 17.01.2011
comment
@Joris, я полностью с вами согласен. Мне просто было любопытно попробовать тот же тест на SPSS. - person djhurio; 18.01.2011

Посмотрите это видео, почему хорошо сочетать SPSS и R ...

Ссылка < / а>

http://bluemixanalytics.wordpress.com/2014/08/29/7-good-reasons-to-combine-ibm-spss-analytics-and-r/

Если у вас установлена ​​совместимая копия R, вы можете подключиться к ней из IBM SPSS Modeler и выполнить построение модели и оценку модели с помощью пользовательских алгоритмов R, которые можно развернуть в IBM SPSS Modeler. У вас также должна быть установлена ​​копия IBM SPSS Modeler - Essentials for R. IBM SPSS Modeler - Essentials for R предоставляет вам инструменты, необходимые для начала разработки пользовательских приложений R для использования с IBM SPSS Modeler.

person aruizga    schedule 08.09.2014

На самом деле оба пакета полезны, если вы занимаетесь анализом данных профессионально. Конечно, в R / RStudio реализовано больше статистических методов, чем в SPSS. Но SPSS намного проще в использовании и дает больше информации при каждом нажатии кнопки. И, следовательно, быстрее использовать всякий раз, когда конкретный анализ реализован как в R, так и в SPSS.

В современную эпоху ни процессор, ни память не являются наиболее ценными ресурсами. Время исследователя - самый ценный ресурс. Кроме того, на мой взгляд, таблицы в SPSS визуально более приятны.

Таким образом, R и SPSS хорошо дополняют друг друга.

person stans    schedule 26.01.2021