Зачем linux data science

Обновлено: 04.07.2024

Наши друзья из «Цеха» опубликовали пошаговую инструкцию для начинающих в сфере Data Science от Елены Герасимовой, руководителя направления «Аналитика и Data Science» в Нетологии. Делимся с вами.

О чём речь

Data Sci­ence — де­я­тель­ность, свя­зан­ная с ана­ли­зом дан­ных и по­ис­ком луч­ших решений на их ос­но­ве. Рань­ше по­доб­ны­ми зада­ча­ми за­ни­ма­лись спе­ци­а­ли­сты по мате­ма­ти­ке и статистике. За­тем на по­мощь при­шел ис­кус­ствен­ный интеллект, что поз­во­ли­ло вклю­чить в ме­то­ды ана­ли­за оптимиза­цию и ин­фор­ма­ти­ку. Этот но­вый под­ход ока­зал­ся намно­го эф­фек­тив­нее.

Как стро­ит­ся про­цесс? Всё на­чи­на­ет­ся со сбо­ра боль­ших масси­вов структурированных и неструк­ту­ри­ро­ван­ных дан­ных и их пре­об­ра­зо­ва­ния в удоб­ный для вос­при­я­тия фор­мат. Дальше ис­поль­зу­ет­ся ви­зу­а­ли­за­ция, ра­бо­та со ста­ти­сти­кой и аналитиче­ские ме­то­ды — ма­шин­но­го и глу­бо­ко­го обу­че­ния, веро­ят­ност­ный ана­лиз и про­гноз­ные мо­де­ли, ней­рон­ные сети и их при­ме­не­ние для ре­ше­ния ак­ту­аль­ных задач.

Пять глав­ных терминов, которые нуж­но за­пом­нить

Большой гид по Data Science для начинающих: термины, применение, образование и вход в профессию

Ис­кус­ствен­ный ин­тел­лект, ма­шин­ное обу­че­ние, глу­бо­кое обуче­ние и на­у­ка о данных — ос­нов­ные и са­мые по­пу­ляр­ные тер­ми­ны. Они близ­ки, но не эк­ви­ва­лент­ны друг дру­гу. На старте важ­но разо­брать­ся, чем они от­ли­ча­ют­ся.

Ис­кус­ствен­ный ин­тел­лект (Ar­ti­fi­cial In­tel­li­gence) — об­ласть, по­свя­щён­ная со­зда­нию ин­тел­лек­ту­аль­ных си­стем, работающих и дей­ству­ю­щих как люди. Её воз­ник­но­ве­ние связа­но с по­яв­ле­ни­ем ма­шин Ала­на Тью­рин­га в 1936 году. Несмот­ря на дол­гую историю раз­ви­тия, ис­кус­ствен­ный интеллект пока не спо­со­бен пол­но­стью за­ме­нить че­ло­ве­ка в боль­шин­стве об­ла­стей. А кон­ку­рен­ция ИИ с людь­ми в шахматах и шифро­ва­ние дан­ных — две сто­ро­ны од­ной ме­да­ли.

Ма­шин­ное обу­че­ние (Ma­chine learn­ing) — со­зда­ние инструмен­та для из­вле­че­ния зна­ний из дан­ных. Мо­де­ли ML обу­ча­ют­ся на дан­ных са­мо­сто­я­тель­но или по­этап­но: обу­че­ние с учи­те­лем на под­го­тов­лен­ных че­ло­ве­ком дан­ных и без учителя — ра­бо­та со сти­хий­ны­ми, за­шум­лен­ны­ми дан­ны­ми.

Глу­бо­кое обу­че­ние (Deep learn­ing) — со­зда­ние мно­го­слой­ных ней­рон­ных се­тей в об­ла­стях, где тре­бу­ет­ся бо­лее продвинутый или быст­рый ана­лиз и тра­ди­ци­он­ное ма­шин­ное обу­че­ние не справ­ля­ет­ся. «Глу­би­на» обес­пе­чи­ва­ет­ся некоторым количеством скры­тых сло­ев ней­ро­нов в сети, которые про­во­дят ма­те­ма­ти­че­ские вы­чис­ле­ния.

Боль­шие дан­ные (Big Data) — ра­бо­та с боль­шим объ­ё­мом ча­сто неструктурированных дан­ных. Спе­ци­фи­ка сфе­ры — это инстру­мен­ты и си­сте­мы, спо­соб­ные выдерживать вы­со­кие нагруз­ки.

На­у­ка об ана­ли­зе дан­ных (Data Sci­ence) — в ос­но­ве об­ла­сти ле­жит на­де­ле­ние смыслом мас­си­вов дан­ных, ви­зу­а­ли­за­ция, сбор идей и при­ня­тие ре­ше­ний на ос­но­ве этих дан­ных. Специа­ли­сты по ана­ли­зу дан­ных ис­поль­зу­ют неко­то­рые методы машин­но­го обу­че­ния и Big Data: об­лач­ные вы­чис­ле­ния, ин­стру­мен­ты для со­зда­ния вир­ту­аль­ной сре­ды раз­ра­бот­ки и мно­гое дру­гое.

Где при­ме­ня­ет­ся Data Sci­ence

  • об­на­ру­же­ние ано­ма­лий, на­при­мер, ненор­маль­ное поведение кли­ен­та, мошенни­че­ства;
  • пер­со­на­ли­зи­ро­ван­ный мар­ке­тинг — элек­трон­ные рассылки, ре­тар­ге­тинг, системы ре­ко­мен­да­ций;
  • ко­ли­че­ствен­ные про­гно­зы — по­ка­за­те­ли эф­фек­тив­но­сти, ка­че­ство ре­клам­ных кам­па­ний и дру­гих ме­ро­при­я­тий;
  • ско­рин­го­вые си­сте­мы — об­ра­бот­ка боль­ших объ­ё­мов данных, по­мощь в принятии ре­ше­ний, на­при­мер, о предостав­ле­нии кре­ди­та;
  • ба­зо­вое вза­и­мо­дей­ствие с кли­ен­том — стан­дарт­ные ответы в ча­тах, го­ло­со­вые по­мощ­ни­ки, сор­ти­ров­ка пи­сем по пап­кам.

Пять ос­нов­ных эта­пов в ра­бо­те с дан­ны­ми

Сбор. По­иск ка­на­лов, где мож­но со­би­рать дан­ные, и выбор ме­то­дов их по­лу­че­ния.

Про­вер­ка. Ва­ли­да­ция, ни­ве­ли­ро­ва­ние ано­ма­лий, ко­то­рые не вли­я­ют на ре­зуль­тат и ме­ша­ют даль­ней­ше­му ана­ли­зу.

Ана­лиз. Изу­че­ние дан­ных, под­твер­жде­ние предположений.

Ви­зу­а­ли­за­ция. Пред­став­ле­ние ин­фор­ма­ции в по­нят­ном для вос­при­я­тия виде: гра­фи­ки, диа­грам­мы.

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

Большой гид по Data Science для начинающих: термины, применение, образование и вход в профессию

Елена герасимова

Руководитель направления «Аналитика и Data Science» в Нетологии

Большой гид по Data Science для начинающих: термины, применение, образование и вход в профессию

Профессия

Data
Scientist

Узнать больше

  • Научитесь строить и обучать предиктивные модели с помощью алгоритмов машинного обучения и нейросетей
  • Сможете находить скрытые закономерности, прогнозировать развитие событий и оптимизировать ключевые бизнес-процессы

Об­ра­зо­ва­ние. Шесть ша­гов на пути к Data Sci­en­tist

Путь к этой про­фес­сии тру­ден: невоз­мож­но овла­деть все­ми ин­стру­мен­та­ми за месяц или даже год. При­дёт­ся по­сто­ян­но учить­ся, де­лать ма­лень­кие шаги каж­дый день, оши­бать­ся и пытать­ся вновь.

Шаг 1. Ста­ти­сти­ка, ма­те­ма­ти­ка, ли­ней­ная ал­геб­ра

Для се­рьез­но­го по­ни­ма­ния Data Sci­ence по­на­до­бит­ся фундамен­таль­ный курс по тео­рии ве­ро­ят­но­стей (математический ана­лиз как необ­хо­ди­мый ин­стру­мент в теории ве­ро­ят­но­стей), ли­ней­ной ал­геб­ре и ма­те­ма­ти­че­ской ста­ти­сти­ке.

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

Что по­чи­тать

«Эле­мен­ты ста­ти­сти­че­ско­го обу­че­ния», Тре­вор Ха­сти, Ро­берт Тиб­ши­ра­ни и Дже­ром Фрид­ман — если по­сле уче­бы в универси­те­те оста­лось мно­го про­бе­лов. Классические разделы ма­шин­но­го обу­че­ния пред­став­ле­ны в тер­ми­нах матема­ти­че­ской статисти­ки со стро­ги­ми ма­те­ма­ти­че­ски­ми вычис­ле­ни­я­ми.

«Глу­бо­кое обу­че­ние», Ян Гуд­фел­лоу. Луч­шая кни­га о математи­че­ских прин­ци­пах, ле­жа­щих в ос­но­ве ней­рон­ных сетей.

«Ней­рон­ные сети и глу­бо­кое обу­че­ние», Май­кл Ниль­сен. Для зна­ком­ства с основны­ми прин­ци­па­ми.

Пол­ное ру­ко­вод­ство по ма­те­ма­ти­ке и ста­ти­сти­ке для Data Science. Кру­тое и нескучное по­ша­го­вое ру­ко­вод­ство, ко­то­рое по­мо­жет сори­ен­ти­ро­вать­ся в ма­те­ма­ти­ке и ста­ти­сти­ке.

Вве­де­ние в ста­ти­сти­ку для Data Sci­ence по­мо­жет по­нять централь­ную пре­дель­ную тео­ре­му. Оно охва­ты­ва­ет генеральные со­во­куп­но­сти, вы­бор­ки и их рас­пре­де­ле­ние, содер­жит по­лез­ные ви­део­ма­те­ри­а­лы.

Пол­ное ру­ко­вод­ство для на­чи­на­ю­щих по ли­ней­ной ал­геб­ре для спе­ци­а­ли­стов по ана­ли­зу дан­ных. Всё, что необ­хо­ди­мо знать о ли­ней­ной ал­геб­ре.

Ли­ней­ная ал­геб­ра для Data Sci­en­tists. Ин­те­рес­ная ста­тья, знако­мя­щая с ос­но­ва­ми ли­ней­ной ал­геб­ры.

Шаг 2. Про­грам­ми­ро­ва­ние

Боль­шим пре­иму­ще­ством бу­дет зна­ком­ство с ос­но­ва­ми програм­ми­ро­ва­ния. Вы може­те немно­го упро­стить себе задачу: нач­ни­те изу­чать один язык и сосредоточьтесь на всех ню­ан­сах его син­так­си­са.

При вы­бо­ре язы­ка об­ра­ти­те вни­ма­ние на Python. Во-пер­вых, он иде­а­лен для новичков, его син­так­сис от­но­си­тель­но прост. Во-вто­рых, Python мно­го­функ­ци­о­на­лен и вос­тре­бо­ван на рынке тру­да.

Что по­чи­тать

«Ав­то­ма­ти­за­ция ру­тин­ных за­дач с по­мо­щью Python: практическое ру­ко­вод­ство для на­чи­на­ю­щих». Прак­ти­че­ское ру­ко­вод­ство для тех, кто учит­ся с нуля. До­ста­точ­но про­честь гла­ву «Ма­ни­пу­ли­ро­ва­ние стро­ка­ми» и вы­пол­нить практические за­да­ния из нее.

Codecad­emy — здесь вы на­учи­тесь хо­ро­ше­му об­ще­му синтакси­су.

Лег­кий спо­соб вы­учить Python 3 — бле­стя­щий ма­ну­ал, в котором объ­яс­ня­ют­ся основы.

Dataquest по­мо­жет осво­ить син­так­сис.

По­сле того, как изу­чи­те ос­но­вы Python, по­зна­комь­тесь с основ­ны­ми биб­лио­те­ка­ми:

  • Numpy : до­ку­мен­та­ция — ру­ко­вод­ство
  • Scipy : до­ку­мен­та­ция — ру­ко­вод­ство
  • Pan­das : до­ку­мен­та­ция — ру­ко­вод­ство

Ви­зу­а­ли­за­ция:

Ма­шин­ное обу­че­ние и глу­бо­кое обу­че­ние:

  • SciKit-Learn: до­ку­мен­та­ция — ру­ко­вод­ство
  • Ten­sor­Flow : до­ку­мен­та­ция — ру­ко­вод­ство
  • Theano : до­ку­мен­та­ция — ру­ко­вод­ство
  • Keras: до­ку­мен­та­ция — ру­ко­вод­ство

Об­ра­бот­ка есте­ствен­но­го язы­ка:

Web scrap­ing (Ра­бо­та с web):

Читать также

Большой гид по Data Science для начинающих: термины, применение, образование и вход в профессию

курс

Python
для анализа данных

Узнать больше

  • Автоматизируете свою рутинную работу с помощью Python
  • Научитесь обрабатывать большие объёмы информации без администрирования и баз данных
  • Освоите ключевой инструмент в мире аналитики и машинного обучения

Шаг 3. Ма­шин­ное обу­че­ние

Ком­пью­те­ры обу­ча­ют­ся дей­ство­вать са­мо­сто­я­тель­но, нам боль­ше не нуж­но пи­сать по­дроб­ные ин­струк­ции для выполнения опре­де­лён­ных за­дач. По­это­му ма­шин­ное обучение име­ет боль­шое зна­че­ние для прак­ти­че­ски лю­бой обла­сти, но преж­де всего бу­дет хо­ро­шо ра­бо­тать там, где есть Data Sci­ence.

Пер­вый шаг в изу­че­нии ма­шин­но­го обу­че­ния — зна­ком­ство с тре­мя его ос­нов­ны­ми фор­ма­ми.

1) Обу­че­ние с учи­те­лем — наи­бо­лее раз­ви­тая фор­ма машинного обу­че­ния. Идея в том, что­бы на ос­но­ве исторических дан­ных, для ко­то­рых нам из­вест­ны «правильные» зна­че­ния (це­ле­вые мет­ки), по­стро­ить функ­цию, пред­ска­зы­ва­ю­щую це­ле­вые мет­ки для но­вых дан­ных. Историче­ские дан­ные про­мар­ки­ро­ва­ны. Маркиров­ка (отнесение к ка­ко­му-либо клас­су) озна­ча­ет, что у вас есть особое вы­ход­ное зна­че­ние для каж­дой стро­ки дан­ных. В этом и за­клю­ча­ет­ся суть ал­го­рит­ма.

2) Обу­че­ние без учи­те­ля. У нас нет про­мар­ки­ро­ван­ных перемен­ных, а есть мно­го необ­ра­бо­тан­ных дан­ных. Это позволя­ет иден­ти­фи­ци­ро­вать то, что на­зы­ва­ет­ся закономерно­стя­ми в ис­то­ри­че­ских вход­ных дан­ных, а так­же сде­лать ин­те­рес­ные выво­ды из об­щей пер­спек­ти­вы. Итак, выход­ные дан­ные здесь от­сут­ству­ют, есть толь­ко шаб­лон, види­мый в некон­тро­ли­ру­е­мом на­бо­ре вход­ных дан­ных. Прелесть обу­че­ния без учи­те­ля в том, что оно под­да­ет­ся много­чис­лен­ным ком­би­на­ци­ям шабло­нов, по­это­му та­кие алгорит­мы слож­нее.

3) Обу­че­ние с под­креп­ле­ни­ем при­ме­ня­ет­ся, ко­гда у вас есть ал­го­ритм с при­ме­ра­ми, в ко­то­рых от­сут­ству­ет мар­ки­ров­ка, как при некон­тро­ли­ру­е­мом обу­че­нии. Од­на­ко вы мо­же­те дополнить при­мер по­ло­жи­тель­ны­ми или от­ри­ца­тель­ны­ми откли­ка­ми в со­от­вет­ствии с ре­ше­ни­я­ми, пред­ла­га­е­мы­ми алгорит­мом. Обу­че­ние с подкреплением свя­за­но с приложени­я­ми, для ко­то­рых ал­го­ритм дол­жен при­ни­мать реше­ния, име­ю­щие по­след­ствия. Это по­хо­же на обу­че­ние мето­дом проб и оши­бок. Интересный при­мер обу­че­ния с подкреп­ле­ни­ем — ко­гда ком­пью­те­ры учат­ся са­мо­сто­я­тель­но иг­рать в ви­део­иг­ры.

Что по­чи­тать

Ви­зу­а­ли­за­ция в ма­шин­ном обу­че­нии. От­лич­ная ви­зу­а­ли­за­ция, ко­то­рая по­мо­жет понять, как ис­поль­зу­ет­ся ма­шин­ное обучение.

Шаг 4. Data Min­ing (ана­лиз данных) и ви­зу­а­ли­за­ция данных

Data Min­ing — важ­ный ис­сле­до­ва­тель­ский про­цесс. Он включа­ет ана­лиз скры­тых мо­де­лей дан­ных в со­от­вет­ствии с раз­лич­ны­ми ва­ри­ан­та­ми пе­ре­во­да в по­лез­ную инфор­ма­цию, ко­то­рая со­би­ра­ет­ся и фор­ми­ру­ет­ся в хра­ни­ли­щах дан­ных для облегче­ния при­ня­тия де­ло­вых ре­ше­ний, при­зван­ных сократить рас­хо­ды и уве­ли­чить до­ход.

Что по­чи­тать и по­смот­реть

Как ра­бо­та­ет ана­лиз дан­ных. От­лич­ное ви­део с до­ход­чи­вым объ­яс­не­ни­ем ана­ли­за дан­ных.

«Ра­бо­та убор­щи­ка дан­ных — глав­ное пре­пят­ствие для ана­ли­за» — ин­те­рес­ная ста­тья, в ко­то­рой по­дроб­но рас­смат­ри­ва­ет­ся важ­ность ана­ли­за дан­ных в об­ла­сти Data Sci­ence.

Шаг 5. Прак­ти­че­ский опыт

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

Ис­поль­зуй­те Kag­gle. Здесь про­хо­дят со­рев­но­ва­ния по ана­ли­зу дан­ных. Су­ще­ству­ет боль­шое ко­ли­че­ство от­кры­тых мас­си­вов дан­ных, ко­то­рые мож­но ана­ли­зи­ро­вать и пуб­ли­ко­вать свои резуль­та­ты. Кро­ме того, вы мо­же­те смот­реть скрип­ты, опуб­лико­ван­ные дру­ги­ми участ­ни­ка­ми и учить­ся на успеш­ном опыте.

Шаг 6. Под­твер­жде­ние квалифи­ка­ции

По­сле того, как вы изу­чи­те всё, что необ­хо­ди­мо для ана­ли­за дан­ных, и по­про­бу­е­те свои силы в от­кры­тых со­рев­но­ва­ни­ях, на­чи­най­те ис­кать ра­бо­ту. Пре­иму­ще­ством ста­нет неза­ви­си­мое под­твер­жде­ние ва­шей ква­ли­фи­ка­ции.

  • рас­ши­рен­ный про­филь на Kag­gle, где есть си­сте­ма ран­гов. Вы мо­же­те прой­ти путь от но­вич­ка до гросс­мей­сте­ра. За успеш­ное уча­стие в кон­кур­сах, публикацию скрип­тов и об­суж­де­ния вы по­лу­ча­е­те бал­лы, ко­то­рые уве­ли­чи­ва­ют ваш рей­тинг. Кро­ме того, на сай­те от­ме­че­но, в ка­ких со­рев­но­ва­ни­ях вы участвова­ли и ка­ко­вы ваши ре­зуль­та­ты.
  • про­грам­мы ана­ли­за дан­ных мож­но пуб­ли­ко­вать на GitHub или дру­гих от­кры­тых ре­по­зи­то­ри­ях, то­гда все же­ла­ю­щие мо­гут озна­ко­мить­ся с ними. В том чис­ле и ра­бо­то­да­тель, ко­то­рый про­во­дит с вами со­бе­се­до­ва­ние.

По­след­ний со­вет: не будь­те ко­пи­ей ко­пий, най­ди­те свой путь. Лю­бой мо­жет стать Data Sci­en­tist. В том чис­ле са­мо­сто­я­тель­но. В сво­бод­ном до­сту­пе есть всё необходи­мое: он­лайн-кур­сы, кни­ги, со­рев­но­ва­ния для прак­ти­ки.

Но не сто­ит приходить в сфе­ру толь­ко из-за моды. Что мы слы­шим о Data Sci­ence: это кру­то, это са­мая при­вле­ка­тель­ная ра­бо­та XXI века. Если это ос­нов­ной сти­мул для вас, его вряд ли хва­тит на­дол­го. Что­бы до­бить­ся успе­ха, важ­но по­лу­чать удо­воль­ствие от процесса.

Большой гид по Data Science для начинающих: термины, применение, образование и вход в профессию

курс

Data Science

После прохождения различных курсов и обучения на различных образовательных платформах, вроде Datacamp, вашим следующим шагом станет использование полученных знаний о Python, R, Git или Unix Shell на персональном компьютере. Однако, многие из нас затрудняются с тем, какие пакеты и программное обеспечение нужно установить, чтобы начать работу с различными технологиями. Поэтому в этой статье мы рассмотрим:

  • Преимущества Python-дистрибутива — Anaconda, а также процесс его установки.
  • Преимущества совместного использования R и RStudio, а также процесс их установки.
  • Преимущества Unix Shell, а также способы его использования на вашем персональном компьютере.
  • Преимущества использования Git, а также процесс его установки.

Ну что же, давайте начнем!

Python

Как вы понимаете, для того, чтобы начать использовать Python — сначала его необходимо установить. Для Python существует огромное количество различных дистрибутивов, но для Data Science — дистрибутив Anaconda является наиболее предпочтительным.

Преимущества Anaconda

Anaconda — это пакетный менеджер, менеджер окружения, а также Python-дистрибутив, содержащий в себе более 400 основных библиотек (с открытым исходным кодом) для научных и инженерных расчетов. Из предустановленных библиотек можно отметить numpy, scikit-learn, scipy, pandas, а также Jupyter Notebooks. На рисунке ниже вы увидите Jupyter Notebook в действии. Это крайне удобный инструмент для создания красивых аналитических отчетов, так как он позволяет хранить вместе код, изображения, комментарии, формулы и графики. Здесь вы можете подробнее узнать о Jupyter Notebooks.

Также у Anaconda есть несколько других преимуществ:

  • Если вам потребуются дополнительные пакеты после установки, вы можете использовать менеджер пакетов conda или pip для установки этих пакетов. Это очень удобно, так как вам не нужно будет беспокоиться из-за совместимости одних пакетов с другими. Всю работу за вас сделают conda или pip. Также Conda упрощает переход между Python 2 и 3 (Здесь вы сможете подробнее об этом узнать).
  • Anaconda поставляется совместно со Spyder — интерактивной IDE для научных расчетов на языке Python. Данная IDE позволяет писать, редактировать и тестировать код. Spyder предлагает просмотр и редактирование переменных с помощью GUI, динамическую интроспекцию кода, нахождение ошибок на лету и многое другое. Также, по необходимости, можно интегрировать Anaconda с другими Python IDE, включая PyCharm и Atom. Здесь вы сможете узнать об этом поподробнее.

Как установить Anaconda?

Ниже приведены ссылки на руководства по установке Anaconda на вашу ОС.

Язык программирования R

Большинство людей устанавливают RStudio в паре с языком программирования R. Интегрированная среда разработки RStudio считается самым простым и удобным способом работы с языком R.

Преимущества RStudio

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


При запуске RStudio появляется экран, схожий с тем, что показан сверху. RStudio разделен на 4 экрана: (A) Текстовый редактор. (B) Панель управления для рабочей среды. © Интерпретатор R (D) Справочное окно и менеджер управления пакетами. Вы должны понять, что RStudio — единственная нужная вам вещь при работе с R. Люди очень часто задают вопрос о том, как установить пакеты в R. На видео ниже вам подробно ответят на этот вопрос на примере пакета tidyverse.

Если вам будет интересно углубиться в данную тему, у Datacamp есть серия из двух курсов, посвященных IDE RStudio (Часть 1, Часть 2).

Как установить R и RStudio?

Ниже приведены ссылки на руководства по установке R и RStudio на вашу ОС.

Unix Shell

Навигация по директориям, копирование файлов, использование виртуальных машин и многое другое — являются неотъемлемой частью работы data scientist. Для выполнения этих задач часто используется Unix Shell.

Способы применения Unix Shell:

  1. Большинство платформ облачных вычислений основаны на Linux. Например, если вы захотите настроить Data Science окружение в Google Cloud или провести глубокое обучение (Deep Learning) с помощью Jupyter Notebooks в облачных веб-сервисах, типа Amazon Web Services и Amazon EC2, для этого вам потребуются знания и навыки работы с Unix Shell. Конечно, вы можете использовать виртуальную машину и на Windows, но подобный метод не так распространен.
  2. Unix Shell предоставляет ряд полезных команд, таких как: команда «wc», которая подсчитывает количество строк или слов в файле; команда «cat», которая позволяет вывести содержимое файла; команды head и tail, которые выводят начало (head) и конец (tail) файла. О многих других командах вы можете узнать из статьи «8 Useful Shell Commands for Data Science».
  3. Unix Shell часто интегрируется с другими технологиями, об этом и пойдет речь далее.

Интеграция с другими технологиями

К примеру, зачастую можно увидеть Unix Shell команды вместе с кодом на Python в Jupyter Notebook. В Jupyter Notebook, вы можете получить доступ к Unix командам, обращаясь к Unix Shell с помощью «!». В приведенном ниже коде, результат Unix команды «ls» (которая перечисляет все файлы в текущей директории) присваивается Python переменной myfiles.

На скриншоте ниже изображен код Python, интегрированный в рабочий процесс для объединения нескольких датасетов. Обратите внимание на Unix Shell команду (в красном прямоугольнике), интегрированную в Jupyter Notebooks

Имейте в виду, что код на скриншоте выше — не какой-то уникальный способ решения проблемы, а всего лишь небольшой пример того, как вы можете использовать Unix команды. Если вы захотите научиться использовать Unix в Data Science, у Datacamp есть бесплатный курс, под названием «Introduction to Shell for Data Science», который я крайне рекомендую. Это тот навык, о котором забывают многие начинающие data scientist, но в дальнейшей работе он может очень пригодится.

Unix Shell на Mac

MacOS поставляется с Unix Shell по умолчанию, поэтому вам не придется ничего устанавливать. Но нужно знать, что существует множество Unix-систем, каждая из которых имеет разные команды. Случается, что у вас нет Unix команды (например, wget), которая до этого была в другой Unix системе. Подобно Anaconda и RStudio, у MacOS тоже есть менеджер пакетов под названием Homebrew. Ниже приведена ссылка о том, как установить и использовать Homebrew.

Команды Unix Shell в Windows

В операционной системе Windows команды Unix Shell по умолчанию не предустановлены. Не забывайте — эти команды будут очень полезны для аналитиков и специалистов в сфере Data Science. Существует множество различных способов, с помощью которых вы сможете установить оболочку Unix в Windows. Например, вы можете установить Git в свой Windows, в который уже входят Unix команды, которые будут доступны для работы из командной строки. Кроме того, вы можете установить GNU на Windows с помощью GOW (около 10мб) или с помощью Unix- подобной среды Cygwin(около 100мб).

Git — на сегодняшний день — это самая широко используемая система контроля версий. Система управления версиями записывает все изменения, которые вы вносите в файл или целый набор файлов и сохраняет их как отдельные версии. Это очень удобно, когда, например, вы пишите код на протяжении нескольких недель и понимаете, что в последние три дня писали не то что нужно и просто откатываетесь к нужной вам версии. Git — важная технология, так как, помимо всего прочего, она позволяет одновременно трудиться над одним проектом/кодом разработчикам по всему миру. Большинство современных компаний, занимающихся разработкой, используют Git в своей профессиональной деятельности. Система контроля версий Git имеет следующие преимущества:

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

Интеграция с другими технологиями

Самое крутое в системе Git это то, что она интегрируется с другими технологиями. Ранее я уже упоминал, что интегрированная среда разработки RStudio (IDE) — это один из лучших вариантов для работы с языком R. RStudio предлагает поддержку управления версиями, и большинство интегрированных сред разработки Python (узнать об этом поподробнее можно здесь).

Если вы хотите узнать больше о том, как использовать Git в сфере Data Science, на сайте DataCamp есть бесплатный курс на эту тему, который я очень рекомендую к изучению.

Инструкции по установке Git

Ниже приведены ссылки на руководства по установке Git в вашей операционной системе.

Заключение

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

Сфера Data Science привлекает своей перспективностью и широтой применения, но не каждый решается в неё погрузиться. Зачастую желающие сменить квалификацию встречают массу оценок и мнений о тернистом пути в этой области, теряя уверенность в себе ещё до старта, — а зря. Предлагаем подборку наиболее популярных заблуждений о профессии, которые мешают сделать выбор.

Мифы о Data Science

Переход в профессию — это долгий процесс, который требует получения высшего образования по технической специальности

Как бы не так. Войти в Data Science может любой, в том числе человек без аналитических навыков. Конечно, знания по прикладной математике или опыт работы в программировании послужат бонусом, но их отсутствие не станет препятствием к освоению профессии. Оптимальный по времени и эффективности вариант обучения — прохождение онлайн-курса с комплексным освоением цифровой специальности.

Онлайн-школа Skillfactory имплементирует в свои курсы фундаментальное обучение, то есть в программу включены алгоритмы решения нестандартных задач, развитие soft skills, кодинг, выполнение проектов. В декабре в школе стартует курс по Data Science, который рассчитан на 24 месяца. За это время вы приобретёте востребованные навыки по направлению и составите портфолио. А спустя год учёбы — получите все компетенции Junior-специалиста: разберётесь в базах данных и SQL, основах Linux и Python, освоите основные инструменты для анализа данных, такие как Pandas, Numpy, Matplotlib и Plotly. Программа следующего года будет зависеть от специализации (AL-разработчик, ML-разработчик, Big Data Engineer) и поднимет вас до уровня Middle.

Мифы о Data Science

Data Science требует столько компетенций, что на их получение уйдёт целая жизнь

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

Курс Skillfactory по Data Science разрабатывался ведущими экспертами в этой области (NVIDIA, EORA). Они как никто другой знают, чего ждать от начинающего специалиста. Поэтому уроки построены таким образом: слушатели просматривают короткий ролик, читают текстовую выжимку по теме, а затем приступают к отработке на практике полученных навыков, не уделяя уйму часов вебинарам. А живые консультации с практикующими экспертами школы помогают разобраться со всеми спорными моментами во время обучения.

Мне придётся выполнять рутинные задачи ежедневно

К Data Science неприменима характеристика тривиального или рутинного занятия. В своей деятельности специалист ежедневно использует кросс-дисциплинарные знания, чтобы из существующих алгоритмов выбрать лучший для своего проекта. Причём почти всегда верное решение не приходит с первой попытки. Выясняя причины возникших сложностей, Data Scientist пробует снова и снова, чтобы прийти к нужному результату.

Мифы о Data Science

В Skillfactory каждый блок изучения сопровождается реальными кейсами от партнёров школы. Слушатели решают актуальные практические задачи по Data Science и в итоге получают git-репозиторий для потенциальных работодателей. К примеру, уже на первом году обучения вы выполните свой первый по-настоящему комплексный проект — разработаете модель, предсказывающую стоимость автомобиля.

Всеобщее увлечение Data Science приведёт к переизбытку специалистов в скором будущем

Спрос на специалистов по аналитике больших данных неуклонно растёт. При этом, несмотря на популярность профессии, по-прежнему ощущается дефицит кадров. Дело в том, что Data Science охватывает всё новые и новые бизнес-области, поэтому спрос на рынке труда стабильно превышает предложение. В банковской деятельности, медицине, биоинформатике, сельском хозяйстве, физических исследованиях — везде есть место анализу данных.

На курсе «Профессия Data Scientist» существует карьерный центр, который помогает каждому окончившему курс трудоустроиться. В чём заключается помощь? Во-первых, IT-рекрутеры с опытом подбора Data Scientist сделают ревью резюме и дадут рекомендации по тому, как выгоднее всего презентовать себя и свои достижения. Кроме того, школа организует консультацию с IT-рекрутером, на которой можно и нужно задавать любые волнующие вопросы по трудоустройству. Наконец, ваше резюме будет направлено компаниям-партнёрам Skillfactory, которые всегда готовы принять в свои ряды грамотных начинающих специалистов. Среди них — NVIDIA, CISCO, «Рамблер», «Ростелеком» и «Сбербанк».

Смена профессии приведёт к потере в зарплате

С 11 декабря каждый, кто выберет курс в SkillFactory, получает не только скидку 50% на обучение, но и подарки. А именно: микрокурс по созданию телеграм-бота, гайд по написанию резюме и курс по Google Sheets

В этом пошаговом руководстве объясняется, как выполнять ряд распространенных задач обработки и анализа данных с помощью Виртуальной машины для обработки и анализа данных (DSVM) с Ubuntu. DSVM с Ubuntu — это доступный в Azure образ виртуальной машины, на которой предварительно установлен ряд инструментов, обычно используемых для анализа данных и машинного обучения. Основные программные компоненты описаны в статье по подготовке Виртуальной машины для обработки и анализа данных с Ubuntu. Образ DSVM позволяет за считаные минуты приступить к обработке и анализу данных без установки и настройки всех инструментов по отдельности. Вы можете легко масштабировать DSVM по мере необходимости и останавливать ее, когда она не используется. DSVM — это гибкий и экономичный ресурс.

Предварительные требования

Чтобы использовать DSVM с Linux, вам потребуются перечисленные ниже компоненты.

Клиент X2Go, установленный на компьютере, и открытый сеанс XFCE. Дополнительные сведения см. в статье по установке и настройке клиента X2Go.

Скачивание набора данных spambase

Набор данных spambase относительно небольшой. Он содержит 4601 пример. Благодаря умеренным требованиям к ресурсам такой размер набора данных прекрасно подходит для демонстрации некоторых основных функций DSVM.

Это пошаговое руководство было создано с использованием DSVM с Linux размером D2 v2 (версия Ubuntu 18.04). Для выполнения процедур, продемонстрированных в этом пошаговом руководстве, можно использовать DSVM этого размера.

Если требуется больше места для хранения, можно создать дополнительные диски и присоединить их к DSVM. Эти диски используют постоянное хранилище Azure, поэтому данные сохраняются, даже если сервер повторно подготовлен из-за изменения размера или завершения работы. Чтобы добавить диск и присоединить его к DSVM, следуйте инструкциям в статье Добавление диска к виртуальной машине Linux. Эти инструкции предназначены для интерфейса Azure CLI, который уже установлен на DSVM. Их можно выполнять полностью из самой виртуальной машины DSVM. Добавить ресурсы хранения можно также с помощью Файлов Azure.

Чтобы скачать данные, откройте окно терминала и выполните следующую команду:

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

Затем объедините два файла вместе.

Просмотр набора данных с помощью Open R

Давайте изучим данные и выполним несколько простых задач машинного обучения с использованием R. Компонент CRAN R предварительно установлен на DSVM.

Чтобы получить копии примеров кода, используемых в этом пошаговом руководстве, клонируйте репозиторий Azure-Machine-Learning-Data-Science. На DSVM предварительно установлена система Git. В программе командной строки Git выполните следующую команду:

Откройте окно терминала и запустите новый сеанс R в интерактивной консоли R. Вы также можете использовать приложение RStudio, предварительно установленное на DSVM.

Чтобы импортировать данные и настроить среду, выполните следующую команду:

Чтобы просмотреть сводные статистические данные по каждому столбцу, выполните следующую команду:

Чтобы получить другое представление данных, выполните следующую команду:

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

Столбец spam распознан как целое число, но это на самом деле категориальная переменная (или факторная). Чтобы задать тип данных в этом столбце, выполните следующую команду:

Чтобы выполнить исследовательский анализ, используйте пакет ggplot2. Это популярная библиотека построения для R, предварительно установленная на DSVM. На основе приведенных ранее сводных данных мы получили статистические данные по частоте использования восклицательного знака. Давайте построим графики частоты, используя следующие команды:

Так как нулевой показатель искажает график, давайте его исключим.

Выше показателя 1 наблюдается необычная плотность. Давайте взглянем только на эти данные.

Затем разобьем их на наборы с обычной и нежелательной почтой.

Эти примеры помогут создать похожие графики и исследовать данные в других столбцах.

Обучение и тестирование модели машинного обучения

Пакет rpart (рекурсивное секционирование и деревья регрессии), используемый в следующем коде, уже установлен на DSVM.

Сначала разделим набор данных на две части: для обучения и тестирования.

Ниже приведен результат:

Схема созданного дерева принятия решений

Чтобы определить, насколько хорошо эта модель работает с обучающим набором данных, используйте следующий код:

Чтобы определить, насколько хорошо она работает с тестовым набором данных:

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

Учебники и пошаговые инструкции по глубокому обучению

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

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

Руководство по созданию комплексного решения по обнаружению продуктов на изображениях. Обнаружение изображений — это метод, который позволяет находить и классифицировать объекты на изображениях. Эта технология может быть очень полезна во многих сферах бизнеса в реальной жизни. Например, розничные продавцы могут использовать этот метод для определения того, какой продукт клиент взял с полки. Эти сведения, в свою очередь, помогают управлять запасами продукции.

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

Классификация текстовых документов. В этом пошаговом руководстве показано, как создать и обучить две разные архитектуры нейронных сетей: сеть, ориентированную на иерархию, и сеть долгой краткосрочной памяти (LSTM). Эти нейронные сети выполняют классификацию текстовых документов с помощью API Keras для глубокого обучения. Keras — это интерфейс для трех самых популярных платформ машинного обучения: Microsoft Cognitive Toolkit, TensorFlow и Theano.

Другие средства

В остальных разделах показано, как использовать некоторые из средств, установленных в DSVM с Linux. Мы обсудим следующие средства:

  • XGBoost;
  • Python
  • JupyterHub;
  • Rattle;
  • PostgreSQL и SQuirreL SQL;
  • Azure Synapse Analytics (ранее — Хранилище данных SQL)

XGBoost;

XGBoost предоставляет быструю и точную реализацию усиленного дерева.

Этот средство можно вызвать из командной строки или Python.

Python

Для разработки на языке Python на DSVM установлены дистрибутивы Anaconda Python версий 3.5 и 2.7.

Дистрибутив Anaconda включает Conda. Conda можно использовать для создания пользовательских сред Python, в которых могу быть установлены разные версии или пакеты.

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

Чтобы научиться публиковать конечные точки Машинного обучения Azure, давайте создадим более простую модель. Мы будем использовать три переменные, которые использовались при публикации модели R ранее.

JupyterHub

Чтобы использовать диспетчер пакетов Python (с помощью команды pip ) из Jupyter Notebook в текущем ядре, используйте в ячейке кода такую команду:

Чтобы использовать установщик Conda (с помощью команды conda ) из Jupyter Notebook в текущем ядре, используйте в ячейке кода такую команду:

На DSVM уже установлено несколько примеров записных книжек.

На DSVM с Linux можно также использовать из командной строки язык Julia.

Rattle;

Rattle (R A nalytical T ool T o L earn E asily — аналитическое средство R для легкого обучения) — это графическое средство R для интеллектуального анализа данных. Rattle содержит интуитивно понятный интерфейс, упрощающий загрузку, изучение и преобразование данных, а также создание и анализ моделей. Возможности этого средства описаны в пошаговом руководстве по графическому пользовательскому интерфейсу для интеллектуального анализа данных для R в Rattle.

Установите и запустите Rattle с помощью следующих команд:

Вам не нужно устанавливать Rattle на DSVM. Однако при открытии Rattle вам может быть предложено установить дополнительные пакеты.

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

Чтобы загрузить и настроить набор данных:

  1. Чтобы загрузить файл, выберите вкладку Data (Данные).
  2. Щелкните селектор рядом с полем Filename (Имя файла) и выберите spambaseHeaders.data.
  3. Чтобы загрузить файл, Щелкните Выполнить. Должна появиться сводка по каждому столбцу, в том числе сведения о распознанном типе данных (входные данные, целевой объект или другой тип переменной) и количестве уникальных значений.
  4. Rattle правильно распознал тип данных столбца spam как целевой объект. Выберите столбец spam, а затем задайте для параметра Target Data Type (Целевой тип данных) значение Categoric (Категориальный).

Чтобы изучить данные:

  1. Выберите вкладку Explore (Изучение).
  2. Установите флажок Summary > Execute (Сводка > Выполнить), чтобы просмотреть сведения о типах переменных и получить сводные статистические данные.
  3. Чтобы просмотреть другие статистические данные о каждой переменной, установите другие флажки, например Describe (Описание) или Basics (Основные сведения).

Для создания аналитических графиков можно также использовать вкладку Explore (Просмотр). Чтобы построить гистограмму данных:

Графики корреляции не менее интересны. Чтобы создать график, выполните следующие действия.

В результате можно получить интересные корреляции: например, technology (технологии) тесно коррелирует с HP и labs (задания). Данные также тесно коррелируют с 650, так как это код региона пользователей, предоставивших набор данных.

Числовые значения для корреляции между словами доступны в окне Explore (Изучение). Интересно, что technology (технология) отрицательно коррелирует с your (ваш) и money (деньги).

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

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

  • word_freq_hp;
  • word_freq_technology;
  • word_freq_george;
  • word_freq_remove;
  • word_freq_your;
  • word_freq_dollar;
  • word_freq_money;
  • capital_run_length_longest;
  • word_freq_business;
  • spam

Чтобы создать базовую модель дерева принятия решений, выполните следующие действия.

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

Завершив создание моделей, выберите вкладку Log (Журнал), чтобы просмотреть код R, выполняемый Rattle во время сеанса. Чтобы сохранить его, нажмите кнопку Export (Экспорт).

PostgreSQL и SQuirreL SQL

Перед загрузкой данных необходимо разрешить выполнять проверку подлинности с использованием пароля на узле localhost. В окне командной строки выполните следующую команду.

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

В строке IPv4 local connections замените ident на md5, чтобы можно было выполнить вход с помощью имени пользователя и пароля.

Перезапустите службу PostgreSQL.

Чтобы запустить psql (интерактивный терминал для PostgreSQL) от имени встроенного пользователя Postgres, воспользуйтесь следующей командой:

Создайте новую учетную запись пользователя, используя имя пользователя учетной записи Linux, которую вы указывали при входе. Создайте пароль.

Импортируйте данные в новую базу данных.

Теперь давайте изучим данные и выполним некоторые запросы с помощью SQuirreL SQL — графического средства, позволяющего взаимодействовать с базами данных через драйвер JDBC.

Чтобы начать работу, запустите SQuirreL SQL из меню Applications (Приложения). Чтобы настроить драйвер, сделайте следующее:

  1. Выберите Windows > View Drivers (Windows > Просмотр драйверов).
  2. Щелкните PostgreSQL правой кнопкой мыши и выберите Modify Driver (Изменить драйвер).
  3. Выберите Extra Class Path > Add (Путь к дополнительным классам > Добавить).
  4. В поле File Name (Имя файла) введите /usr/share/java/jdbcdrivers/postgresql-9.4.1208.jre6.jar.
  5. Щелкните Open(Открыть).
  6. Выберите List Drivers (Список драйверов). В поле Class Name (Имя класса) выберите org.postgresql.Driver, а затем нажмите кнопку ОК.

Чтобы установить подключение к локальному серверу:

  1. Выберите Windows > View Aliases (Windows > Просмотр псевдонимов).
  2. Чтобы создать псевдоним, нажмите кнопку + . В поле имени нового псевдонима введите Spam database (База данных нежелательной почты).
  3. Для параметра Driver (Драйвер) выберите значение PostgreSQL.
  4. В качестве URL-адреса укажите jdbc:postgresql://localhost/spam.
  5. Введите имя пользователя и пароль.
  6. Щелкните ОК.
  7. Чтобы открыть окно Подключение, дважды щелкните псевдоним База данных нежелательной почты.
  8. Выберите Подключиться.

Чтобы выполнить запросы:

  1. Выберите вкладку SQL .
  2. В поле запроса в верхней части вкладки SQL введите базовый запрос, например SELECT * from data; .
  3. Нажмите клавиши CTRL+ВВОД, чтобы выполнить запрос. По умолчанию SQuirreL SQL возвращает первые 100 строк из запроса.

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

Если вы хотите выполнять задачи машинного обучения с данными, хранящимися в базе данных PostgreSQL, рекомендуем воспользоваться MADlib.

Azure Synapse Analytics (ранее — Хранилище данных SQL)

Azure Synapse Analytics — это развернутая в облаке база данных с поддержкой горизонтального увеличения масштаба, которая может обрабатывать большие объемы реляционных и нереляционных данных. Дополнительные сведения см. в разделе Что такое Azure Synapse Analytics?

Чтобы подключиться к хранилищу данных и создать таблицу, выполните следующую команду из командной строки:

Воспользуйтесь следующей командой в командной строке sqlcmd:

Скопируйте данные с помощью программы bcp.

Скачанный файл содержит символы конца строки в стиле Windows. Программа bcp ждет завершения строк в стиле Unix. Используйте флаг -r, чтобы сообщить об этом bcp.

Затем выполните запрос с помощью программы sqlcmd.

Запрос можно также выполнить с помощью SQuirreL SQL. Выполните действия, аналогичные PostgreSQL, с помощью драйвера JDBC SQL Server. Драйвер JDBC находится в папке /usr/share/java/jdbcdrivers/sqljdbc42.jar.

Хочу стать Data Analyst на R и Python.
Прошу совета опытных аналитиков и Data Scientistов.
На Windows вполне полноценно можно работать с данными в RStudio, Jupiter Notebook и других прогах?

С Убунтой постоянно какой-то головняк появляется. То Wi-Fi падает, то проводной интернет не работает. То не устанавливается что-то. Работаю на ноуте.

В избранное В избранном 0

Похожие топики


Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.

90 комментариев


Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.

WSL 2 помоиму должен решать все проблемы

Я использовал федору, аналог красной шапочки.

Не там копаєте.
Ставте анаконду на будь-якій ОСі, буде щастя. І тільки після конкретних проблем можна буде думати про іншу операційку.

Vasily Nekrasov Senior Risk Analyst and Model Developer в Total Energie Gas GmbH 29.04.2019 21:09

Не хвастовства ради, а токмо в рамках обмена опытом.
Обычно после установки интерпретатора я сразу устанавливаю Rtools и devtools. Как-то так сложилось, что большинство проектов я заворачиваю в пекедж ради удобства работы, задействования клавиатурных сокращений для прогона тестов, написания доков и т.д. Да, можно задействовать шаблоны проектов и т.д. Следовательно, devtools присутствует всегда. Сейчас попробовал установить emh на Винде 10 с R 3.5.2. Ругнулось на необновлённые пакеты, но отработало на ура.

Vasily Nekrasov Senior Risk Analyst and Model Developer в Total Energie Gas GmbH 29.04.2019 22:34
Сейчас попробовал установить emh на Винде 10 с R 3.5.2

А у меня сейчас Microsoft’овский R. Они с одной стороны четко следят за порядком в версиях пактов (чего нет в CRAN’е), но с другой — когда нестандартная ситуация, то те же devtools могут оказаться несовместимыми.
Кстати, как emh — стоит того, чтоб повозиться с его установкой?

Я майкрософтовским Аром не пользовался. Предполагаю, что где-то так и есть. Microsoft улучшил, добавил, но нужно быть готовым к тому, что там не заработает что-то, что работет в ванильном R. Ну а CRAN чем-то напоминает debian testing ;) Можно годами работать без проблем, но если что — экранируем функции сами ;)

emh лично не пробовал, ничего не могу сказать. Хотя, помню, пару лет назад писал довольно большой проект по рандом-вокам. Ещё и умудрился реализовать его с разными подходами: R4, R5, R6. Тоже испёк пакет, но на CRAN предложить своё монстрообразное поделие постеснялся.

Vasily Nekrasov Senior Risk Analyst and Model Developer в Total Energie Gas GmbH 01.05.2019 11:48

Мне сразу бросились в глаза французские фигурные кавычки вместо прямых, но, наверное, это особенности вашего копи-паста, и в RStudio у вас используются прямые кавычки. Надеюсь, что прямые. Прогресс-бар прошёл 59% и остановился.
Я по-быстрому глянул функцию emh::is_random():
здесь применяется логарифмирование или похожее на него преобразование numeric-значений zoo-объекта, где мы получаем NaN-ы, из-за которых нам дальше выдаётся ошибка:
logrets <- as_logreturns(S)
В as_logreturns() завёрнута функция cAsLogReturns(), которая, в свою очередь задействует Rcpp.
Похоже, нужно либо разбираться глубже, либо бросить этот emh и использовать другой пакет.

В спешке писал. Разумеется, cAsLogReturns() задействует cpp-код через Rcpp. Вот он:

Да, по замыслу создателя пакета

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

Там в выражении участвует вектор по-идее-ненулей levels и order. Я ж говорю, надо вникать, якщо знайдеться натхнення й час.

Vasily Nekrasov Senior Risk Analyst and Model Developer в Total Energie Gas GmbH 02.05.2019 00:20
Похоже, нужно либо разбираться глубже, либо бросить этот emh и использовать другой пакет.

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

это opensource во всей красе. ;)

Nikita Barsukov Software engineer, data analysis, business intelligence and machine learning 16.04.2019 12:47

Если речь идет только о Python / R, то без разницы, нормально работает и там и там.

А так, не надо забывать что BI специалисты очень часто работают с MS Office, например, и с Экселем в частности. Открывать странные Excel форматы в Убунте то еще удовольствие.

Плюс стандартные BI тулы, например Tableau, PowerBI, их на линуксе нет.

стандартные BI тулы, например Tableau, PowerBI, их на линуксе нет.

Десктопної версії нема, але є сервер версія з яком можна працювати через браузер.

Какие хорошие вопросы Максим задает)))

Спасибо, Леша))
У меня был хороший учитель:))

В последние пару месяцев на пк и ноуте перепробовал почти все семейство ubuntu и к этому еще и manjaro. Итоговый вывод (имхо конечно же)- самый быстрый дистрибутив — manjaro (plasma), самый стабильный mint (cinnamon), самый красивый (и украшаемый) — Kubuntu (plasma). Но для хочу или нет, второй системой пришлось оставить windows10 , ибо world of tanks , на linux хоть и работает но теряет 2/3 производительности.

Я бы посоветовала Ubuntu 16.04, она стабильнее остальных. Почему не советую windows — большинство пакетов/либ требует компиляции плюсового кода, в винде это ппц сложно, особенно начинающему юзеру, остается только брать wheels из интернета

Оба языка и их инструментарий отлично живут что на Винде, что на Линухе.
Я бы даже с WSL не заморачивался.

На Windows вполне полноценно можно работать с данными в RStudio, Jupiter Notebook и других прогах?

Остальное поймёте в процессе развития.

Здесь уже отписались по поводу docker и AWS, keras. Когда начнёте этим заниматься, поймёте, что пора запускать линукс: либо в отдельном разделе диска дуалбутом, либо через Virtualbox/Vmware, либо через WSL.

WSL может быть решением во многих задачах, когда вам нужен Linux. За сколько-то лет работы в этой сфере я трудился то попеременно в Windows и Linux, то исключительно в Windows, а сейчас больше в Windows+WSL.

Читайте также: