Python Pandas vs R

notknown
Уже с Приветом
Posts: 17496
Joined: 25 Jan 2005 00:59

Re: Python Pandas vs R

Post by notknown »

Кстаит, у меня вопрос к знатокам. Просто интересно. А почему везде натыкаюсь что Питон вроде как гораздо универсальнее чем R и т.п. А как в реальной жизни, так везде только на R натыкаюсь. просто совпадение или что-то может обьяснить это явление (типа Питон моднее и не все еще переметнулись или что-то в этом роде)...
User avatar
perasperaadastra
Уже с Приветом
Posts: 20128
Joined: 21 Feb 2009 22:55
Location: Лох Онтарио

Re: Python Pandas vs R

Post by perasperaadastra »

Ну, тут такое дело, я к науке данных не имею отношения. Для меня это все вторичные навыки. Если нужна серьезная работа, то это пойдет с специалистам. А мне просто нужно иногда вытянуть и проанализировать по-быстрому параметры производственного процесса, например. Ну и прочие вещи, по-мелочевке. Поэтому я не ограничен в выборе инструмента (R vs Py/Pandas). Но хотелось бы выбрать правильно с точки зрения наибольшей отдачи в будущем. Просто будет обидно, если я ограничусь R, а в будущем Панды (или что-нибудь другое) станут такими популярными, что R станет очень нишевым инструментом, как Фортран в наши дни.
User avatar
perasperaadastra
Уже с Приветом
Posts: 20128
Joined: 21 Feb 2009 22:55
Location: Лох Онтарио

Re: Python Pandas vs R

Post by perasperaadastra »

Снежная Королева wrote:И вообще.
Прочитайте reddit/datascience post
"I hire data scientists - this is the stuff this forum doesn't discuss enough...:"
После этого прочитайте все посты kindasortadata.
This has changed my life :)
Спасибо за ссылки, почитаю.
Снежная Королева wrote:На самом деле все это неважно. Что команда ваша использует, то и вы будете использовать.
Тут такое дело... я к науке данных не имею отношения. Для меня это все вторичные навыки. Если нужна серьезная работа, то это пойдет с специалистам. А мне просто нужно иногда вытянуть и проанализировать по-быстрому параметры производственного процесса, например. Ну и прочие вещи, по-мелочевке. Поэтому я не ограничен в выборе инструмента (R vs Py/Pandas). Но хотелось бы выбрать правильно с точки зрения наибольшей отдачи в будущем. Просто будет обидно, если я ограничусь R, а в будущем Панды (или что-нибудь другое) станут такими популярными, что R станет очень нишевым инструментом, как Фортран в наши дни.
User avatar
flip_flop
Уже с Приветом
Posts: 4379
Joined: 20 Jun 2001 09:01

Re: Python Pandas vs R

Post by flip_flop »

Снежная Королева wrote:В "проанализировать по-быстрому clean data" у R нет конкурентов.
Слишком категоричное утверждение.

И противоречит " неважно какой язык/tool, от слова совсем. Важно как хорошо вы его знаете, чтобы get the job done fast". Я бы ещё добавил - важно как хорошо вы знаете предметную область, анализ данных, и статистику с теорвером и численными методами.

---
"Любое обобщение опасно. И это тоже" [Дюма мл.]
"Есть ложь, наглая ложь, и статистика" [Дизраэли]
User avatar
flip_flop
Уже с Приветом
Posts: 4379
Joined: 20 Jun 2001 09:01

Re: Python Pandas vs R

Post by flip_flop »

Снежная Королева wrote: Reddit Data science репутация не хуже чем Привет.
Тут я согласен, целиком и полностью, репутацию ни первого ни второго не переоцениваю :D
SAS используется только в крупных компаниях и government. Powerful and gets the job done. Totally uncool, но хорошо оплачивается.
Совсем ( не от слова совсем, как модно сейчас говорить, а просто совсем) не знаком с SAS. Впрочем, как и с R. Что, кмк, не мешает использовать инструмент статистики и анализа данных (как вспомогательный инструмент, на звание даталога не претендую). Доктор, есть шансы выжить?
tessob
Уже с Приветом
Posts: 549
Joined: 07 Jan 2016 13:04

Re: Python Pandas vs R

Post by tessob »

Для себя выбрал R, хотя сравнить его могу только с питоном. Сравнительные преимущества для меня:
  1. Датафреймы в R-studio нагляднее, чем в пандас. Я не нажимая дополнительных кнопок могу посмотреть корректно-ли загрузились данные. Если таблица большая, то в пандас нужно проделывать дополнительные пассы руками. В R просто слайдеры.
  2. Факторизация в R датафреймах это пожалуй один из важнейших для меня плюсов, как это не смешно. Просто при работе мне не нужно помнить, что 2 - это вторник, а 1 - это мужчина. Особенно это важно, когда нужно вернуться к данным после длительного перерыва.
  3. Различные статистические тесты сразу выводят мини-отчет в консоль и мне не нужно медитировать над тем какой из методов дернуть, чтоб узнать RSS или R-квадрат.
  4. Хелп у R более вменяемый.
Это все, разумеется, ИМХО. В целом, с R я трачу значительно меньше времени на работу с данными. Учитывая, что я из индустрии, то данные у меня редко переваливают за пару гигабайт. Так что, ни спарки ни хадупы мне не нужны. Если мне нужен хитрый ETL или нейросети, то никто меня не станет бить по рукам, если я использую для этого питон или яву. Опять же, понять нужны или нет нейросети, я также могу в R. Просто, применить леса или svm и если они ничего не объясняют, то и с сетями скорее всего ничего не выйдет.
User avatar
flip_flop
Уже с Приветом
Posts: 4379
Joined: 20 Jun 2001 09:01

Re: Python Pandas vs R

Post by flip_flop »

Снежная Королева wrote:
flip_flop wrote: Совсем ( не от слова совсем, как модно сейчас говорить, а просто совсем) не знаком с SAS. Впрочем, как и с R.
Зачем вы тогда вступаете в разговор?
Потому что хочу понять область предпочтения R. Ну и просто поговорить :D
User avatar
flip_flop
Уже с Приветом
Posts: 4379
Joined: 20 Jun 2001 09:01

Re: Python Pandas vs R

Post by flip_flop »

Снежная Королева wrote:
flip_flop wrote:
Снежная Королева wrote:В "проанализировать по-быстрому clean data" у R нет конкурентов.
Слишком категоричное утверждение.

И противоречит " неважно какой язык/tool, от слова совсем. Важно как хорошо вы его знаете, чтобы get the job done fast".
Разве не понятно, что подразумевается "при прочих равных условиях", т.е. Если вы одинаково хорошо знаете R / Python / whatever?

По моему понятно, что если вы не знаете R, а знаете Excel, то наилучший tool для вас - это Excel.
Евона как лихо Екселем припечатали :D Мы тут, как бы, о Питоне всё таки. Ну и о других подобных высокоуровневых языках и средствах.
Физик-Лирик
Уже с Приветом
Posts: 5106
Joined: 19 Oct 2004 01:46

Re: Python Pandas vs R

Post by Физик-Лирик »

На мой взгляд, все зависит от области применения. Тут упоминали универсальность Питона. А в чем универсальность? В том, что он ОО язык. В этом смысле R другой.
Если же говорить об аналитике тогда они одинаковы (я, кстати, предпочитаю R). Не понятно, почему из всех библиотек автор вынес в заглавие только pandas (наверное, просто места мало). Все-таки, универсальный набор аналитика включает и другие библиотеки. Если сравнивать работу с дейта фреймами, думаю, Питон универсальнее. Для машинного обучения и "математимки" ... я предпочитаю R, хотя Питон такой же мощный. Мне "не нравится", что надо делать перекодировки категорийных переменных, тогда как в R это делается автоматически.
Автору топика. Я бы посоветовал освоить Питон, если Вы собираетесь искать работу. Немало контор делают аналитику именно на нем. Если Вы этого делать пока не собираетесь, а учить нет времени, я бы не стал связываться. Выучите Вы его за несколько недель. Ещё несколько недель практиковаться. Однако, если будите продолжать работать с R Вы забудете Питон через пару месяцев. В крайней случае, выучите, когда надо будет. Если "языковой" опыт хороший, освоите быстро. Лучше учить фундаментальные вещи.
Ещё совет. Если действительно что-то и учить сейчас, тогда Спарк. Здесь Вы можете взять тот же Питон или Скалу (я на Скале работаю). В последних релизах (1.6 и выше) Спарк поддерживает дейта фреймы (только работайте уже с новой библиотекой). Аналогия тесная. Либо Спарк на R. Нужны сейчас дистрибутивы технологии. Либо работайте на R с водой. В общем, есть что учить. :D
User avatar
flip_flop
Уже с Приветом
Posts: 4379
Joined: 20 Jun 2001 09:01

Re: Python Pandas vs R

Post by flip_flop »

Физик-Лирик wrote:На мой взгляд, все зависит от области применения. Тут упоминали универсальность Питона. А в чем универсальность? В том, что он ОО язык. В этом смысле R другой.
Нет, не в том что он ОО. Он вообще-то multi-paradigm.

Если R написан статистиками для статистиков, то Python - by computer scientists for computer scientists. В нём легко и удпбно делать всякую всячину - и TCP/IP сокеты программироовать, и парсинг удобный, и масса других гитик. По числу и качеству "обёрток" для deep learning питону нет равных, кмк.

Вот нашёл сравнение, которое расставляет многое по полкам, кмк. Лично мне вот это понравилось:

The closer you are to statistics, research, and data science, the more you might prefer R.
The closer you are to working in engineering environment, the more you might prefer Python.
User avatar
flip_flop
Уже с Приветом
Posts: 4379
Joined: 20 Jun 2001 09:01

Re: Python Pandas vs R

Post by flip_flop »

Физик-Лирик wrote: Ещё совет. Если действительно что-то и учить сейчас, тогда Спарк. Здесь Вы можете взять тот же Питон или Скалу (я на Скале работаю). В последних релизах (1.6 и выше) Спарк поддерживает дейта фреймы (только работайте уже с новой библиотекой). Аналогия тесная. Либо Спарк на R. Нужны сейчас дистрибутивы технологии. Либо работайте на R с водой. В общем, есть что учить. :D
Насколько я понял, perasperaadastra не соберается быть датологом-аналитиком, скорее это вспомогательная область для основной предметной области - физики, например, или инженерной деятельности. Поэтому критерии могут быть несколько другие.
tessob
Уже с Приветом
Posts: 549
Joined: 07 Jan 2016 13:04

Re: Python Pandas vs R

Post by tessob »

Объясните мне пожалуйста зачем учить Spark, если петабайта данных нет и не предвидится? Кто вообще в реальной практике работает с этими петабайтами, кроме поисковиков и социальных сетей?
User avatar
flip_flop
Уже с Приветом
Posts: 4379
Joined: 20 Jun 2001 09:01

Re: Python Pandas vs R

Post by flip_flop »

tessob wrote:Объясните мне пожалуйста зачем учить Spark, если петабайта данных нет и не предвидится? Кто вообще в реальной практике работает с этими петабайтами, кроме поисковиков и социальных сетей?
Вопрос, конечно, интересный. Спросим физика-лирика, он вроде реально с этим на практике работает.

Кстати, интересный доклад был недавно на инженерной конференции о Machine Learning/Deep Learning. Пока что основное практическое применение - в поисковиках, чтобы подсунуть вам (миллионам/миллиардам потребителей) рекламу на основе ваших смутных предпочтений. Концепция спорная, но вот там, наверное, и крутятся пета- екза- байты :D
iDesperado
Уже с Приветом
Posts: 1349
Joined: 28 Nov 2008 17:50

Re: Python Pandas vs R

Post by iDesperado »

tessob wrote:Объясните мне пожалуйста зачем учить Spark, если петабайта данных нет и не предвидится? Кто вообще в реальной практике работает с этими петабайтами, кроме поисковиков и социальных сетей?
у нас базы по 50-120 гб в оракле, модели делают в sas dataminer, а дальше руками модели переносятся (переписываются) на оракл или hadoop, потому, что процессить продакшен данные на sas было бы невероятно дорого.
сейчас вот смотрю на спарк и вообще не понимаю чем эти дата сайнтологи занимаются. 16 строк кода разбивают датасет на две части, по одной тренеруют модель (random forest) по второй проверяют работу модели и считают кол-во ошибок. 16 строк. с позиции девелопера просто не понятно что за профессию вы тут обсуждаете. :mrgreen:
Физик-Лирик
Уже с Приветом
Posts: 5106
Joined: 19 Oct 2004 01:46

Re: Python Pandas vs R

Post by Физик-Лирик »

flip_flop wrote:Нет, не в том что он ОО. Он вообще-то multi-paradigm.
Здесь я согласен. Безусловно Питон имеет гораздо больше возможностей. Здесь как бы все ясно. Я так понял, что автору топика универсальность не очень нужна, те. упор в основном на аналитику.
flip_flop wrote:Насколько я понял, perasperaadastra не соберается быть датологом-аналитиком, скорее это вспомогательная область для основной предметной области - физики, например, или инженерной деятельности. Поэтому критерии могут быть несколько другие.
Тогда тем более одного R хватит. Не думаю Питон внесёт что-то новое.
flip_flop wrote:
tessob wrote:Объясните мне пожалуйста зачем учить Spark, если петабайта данных нет и не предвидится? Кто вообще в реальной практике работает с этими петабайтами, кроме поисковиков и социальных сетей?
Вопрос, конечно, интересный. Спросим физика-лирика, он вроде реально с этим на практике работает.
А как тогда работать, скажем, с десятками миллионов строк в таблице? R уже не потянет (памяти не хватит). Да и алгоритмы будут медленно работать. А таблицы с десятками миллионов строк сейчас уже норма. Ведь современные алгоритмы - это же ещё распараллеливание, ведь не каждый метод можно просто с R скопировать.

Return to “Вопросы и новости IT”