Python Pandas vs R

User avatar
perasperaadastra
Уже с Приветом
Posts: 20128
Joined: 21 Feb 2009 22:55
Location: Лох Онтарио

Python Pandas vs R

Post by perasperaadastra »

Такой вопрос: имеет ли смысл переходить с R на Питон с пандами? Я потратил время на изучение R, набрал кучу шаблонов и привык к синтаксису. Но у R есть значительные недостатки: 1) iterations are discouraged; 2) кроме анализа данных на R ничего сделать нельзя. Питон же универсален. В нем можно организовать не только анализ, но и сбор данных с разветвлениями для различных сценариев.
iDesperado
Уже с Приветом
Posts: 1422
Joined: 28 Nov 2008 17:50

Re: Python Pandas vs R

Post by iDesperado »

perasperaadastra wrote:Такой вопрос: имеет ли смысл переходить с R на Питон с пандами? Я потратил время на изучение R, набрал кучу шаблонов и привык к синтаксису. Но у R есть значительные недостатки: 1) iterations are discouraged; 2) кроме анализа данных на R ничего сделать нельзя. Питон же универсален. В нем можно организовать не только анализ, но и сбор данных с разветвлениями для различных сценариев.
сейчас модно их вместе на каком-нибудь databriks cloud юзать через spark фреймворк.
User avatar
flip_flop
Уже с Приветом
Posts: 4375
Joined: 20 Jun 2001 09:01

Re: Python Pandas vs R

Post by flip_flop »

В моих задачах (где анализ данных вспомогателен, хотя и важен) я никогда не пользовался R, лет эдак за 30. Обходился Матлабом, недавно перешёл на Питон с Pandas + другие пакеты (типа DOE, Pareto, etc.). Сейчас осваиваю Julia для HPC. Мне не совсем понятна область предпочтительного применения R, ну кроме исторических мотивов (типа: учили же, все настоящие статистики используют, и т.д.).

Питон - да, наиболее универсален.
User avatar
Flash-04
Уже с Приветом
Posts: 63377
Joined: 03 Nov 2004 05:31
Location: RU -> Toronto, ON

Re: Python Pandas vs R

Post by Flash-04 »

Круто :)
Not everyone believes what I believe but my beliefs do not require them to.
User avatar
perasperaadastra
Уже с Приветом
Posts: 20128
Joined: 21 Feb 2009 22:55
Location: Лох Онтарио

Re: Python Pandas vs R

Post by perasperaadastra »

Снежная Королева wrote: в R я лично делаю все. Начиная от ETL pipeline и заканчивая web development. Меня жизнь заставила очень хорошо выучить R, и все остальное теперь раздражает.
Я вас понимаю. Сам смотрю на Питон/Панды с сомнением. Хоть я и не часто пользуюсь R, но уже привык. На Пандах нужно начинать с нуля. Но именно потому, что нечасто пользуюсь R, я и задумываюсь о переходе на Питон, пока есть возможность..
User avatar
flip_flop
Уже с Приветом
Posts: 4375
Joined: 20 Jun 2001 09:01

Re: Python Pandas vs R

Post by flip_flop »

Снежная Королева wrote:Удобство R для академиков в том, что абсолютно все можно делать в одном R-Studio, начиная от сбора данных, анализа, моделей и написания научных статей и книг. И всегда можно быть уверенным, что если вышла статья на интересующую тему, то будет пакет в R написан, в не в Питоне. И все вокруг будут знать R.

Если вам надо для работы в индустрии, то можно и Питон.
Наверное так, но с малым уточнением - для статистиков/даталогов академиков, а не академиков вообще. Я в бытность свою академиком, абсолютно всё делал в Матлабе. Включая вполне развитый тоолбокс для статистики. Сейчас многие академики перешли на Питон с соответствующими пакетами. Но статистики твёрдо остаются верны R - языком, написанном статистиками для статистиков.
User avatar
flip_flop
Уже с Приветом
Posts: 4375
Joined: 20 Jun 2001 09:01

Re: Python Pandas vs R

Post by flip_flop »

Снежная Королева wrote:R также в social sciences популярен.
Странно. Но, как бы то ни было, Питон имеет гораааздо большую базу пользователей, в той же академии.
Матлаб для академии как то странно, учитывая стоимость пакетов.
Для академии/студентов у Mathworks сущствнные скидки. У меня был вполне обеспеченный факультет и мне и подороже покупали, если надо было.
Про развитый toolbox для статистики, не делайте мне смешно. Я сейчас делаю очень простой research thesis, беру существующую библиотеку, смотрю source code (C), переписываю и добавляю фичи и назад компилирую эту же библиотеку, но уже с перламутровыми пуговицами. Я теперь R developer :) В матлабе такое в принципе невозможно, т.к. proprietary software.
Мне вполне хватало стандартных возможностей statistical toolbox. Ну не для разработчиков - переделывателей R :D а для практических задач. Интерфейс с С/С++ реализован через MEX, есть ещё компиллятор и генераторы С кода. Но сами функции тоолбоксов проприетарные и закрытые, это да.

А вообще - и R и Python и Matlab - ветхое старьё :D Скоро взлетит Julia.
User avatar
flip_flop
Уже с Приветом
Posts: 4375
Joined: 20 Jun 2001 09:01

Re: Python Pandas vs R

Post by flip_flop »

Снежная Королева wrote:
flip_flop wrote:Но статистики твёрдо остаются верны R - языком, написанном статистиками для статистиков.
Неудивительно, потому что R - open source :pain1: Только Python может сравниться, тоже open source.
Есть ещё много других open source, не толко Python. Octave, Scilab, Julia, etc.
Matlab, SAS, SPSS для резерча вообще не подходят. Fortran, и особенно C (сейчас чаще C++ ) почти везде используется Для резерва, но только как встроенные функции в обёртке R пакетов. Чтобы не нарушать экосистему.
To же самое верно и для Python и для Julia ( в ней наиболее элегантно) и для многих других.
User avatar
+KPOT+
Уже с Приветом
Posts: 7640
Joined: 03 Oct 2014 06:12

Re: Python Pandas vs R

Post by +KPOT+ »

Снежная Королева wrote:Я сейчас делаю очень простой research thesis, беру существующую библиотеку, смотрю source code (C), переписываю и добавляю фичи и назад компилирую эту же библиотеку, но уже с перламутровыми пуговицами. Я теперь R developer :)
:pray: :love:
User avatar
perasperaadastra
Уже с Приветом
Posts: 20128
Joined: 21 Feb 2009 22:55
Location: Лох Онтарио

Re: Python Pandas vs R

Post by perasperaadastra »

flip_flop wrote:А вообще - и R и Python и Matlab - ветхое старьё :D Скоро взлетит Julia.
Или эмир, или ишак...
User avatar
flip_flop
Уже с Приветом
Posts: 4375
Joined: 20 Jun 2001 09:01

Re: Python Pandas vs R

Post by flip_flop »

Вот, интересная статистика по штатам.

Как там оно в Канаде и в Австралии - не знаю.
User avatar
perasperaadastra
Уже с Приветом
Posts: 20128
Joined: 21 Feb 2009 22:55
Location: Лох Онтарио

Re: Python Pandas vs R

Post by perasperaadastra »

А вот что такое SAS? На вебсайте там много разных продуктов... Там есть что-то, что заменяет R с его библиотеками?
notknown
Уже с Приветом
Posts: 17506
Joined: 25 Jan 2005 00:59

Re: Python Pandas vs R

Post by notknown »

perasperaadastra wrote:А вот что такое SAS? На вебсайте там много разных продуктов... Там есть что-то, что заменяет R с его библиотеками?
Я могу только сказать что мой непосредственный начальник натренированный на SAS и его дразнят R-товарищи что он отстал от времени. И к тому же SAS - дорогой, как и MATLAB
notknown
Уже с Приветом
Posts: 17506
Joined: 25 Jan 2005 00:59

Re: Python Pandas vs R

Post by notknown »

Снежная Королева wrote:На самом деле все это неважно. Что команда ваша использует, то и вы будете использовать.
Сермяжная Правда. :umnik1:
User avatar
flip_flop
Уже с Приветом
Posts: 4375
Joined: 20 Jun 2001 09:01

Re: Python Pandas vs R

Post by flip_flop »

Снежная Королева wrote:И вообще.

Прочитайте reddit/datascience post

"I hire data scientists - this is the stuff this forum doesn't discuss enough...:"

После этого прочитайте все посты kindasortadata.

This has changed my life :)
Совет perasperaadastra, как я понимаю ? Глобальный такой "вообще" совет. "Нет, вы поезжайте, поезжайте в Киев, и спросите о Паниковском" :D

Reddit имеет несколько сомнительную репутацию.

Можно своими словами, для не датологов, но где-то рядом, которые читать вышеотмеченное не будут, но интересуются?

Если про то, что знание предметной области является первичным и выбор средств вторичен - это понятно.
notknown
Уже с Приветом
Posts: 17506
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: 4375
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: 4375
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: 576
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: 4375
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: 4375
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: 5104
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: 4375
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.

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