Internships
Register
Copyright © 2000—2025 JetBrains s.r.o.

Автодополнение и анализ кода для data science библиотек на Python

Description

Предлагается сделать ряд улучшений в code insight для популярных библиотек анализа данных и визуализации. Пример возможных улучшений:

  • В pandas.DataFrame названия колонок указываются в виде списка строк. Названия колонок могли бы предлагаться в полях и аргументах функции с помощью auto-complete.
  • При работе с Jupyter-ноутбуками можно было бы предлагать в auto-complete названия колонок, которые были получены при чтении датафреймов из CSV-файлов, баз данных и т.п.
  • Одни и те же методы в pandas могут возвращать новые датафреймы или модифицировать текущие. Статический анализатор мог бы подсказывать о неправильном использовании таких методов.
  • В matplotlib у многих функций есть огромное количество параметров, но они скрыты под **kwargs и на данный момент не могут быть предложены в auto-complete.
  • В tensorflow методы могут принимать строковые аргументы, возможные значения которых заранее известны и документированы. Например, аргумент optimizer в model.compile. Их тоже можно было бы предлагать в auto-complete.

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

Разработка будет вестись преимущественно на Kotlin. Помимо этого, придётся вникать в исходные коды популярных Python-библиотек.

Задавать вопросы можно письмом на vladimir.lagunov@jetbrains.com

Requirements

  • Умение писать простые приложения на Java или Kotlin.
  • Умение писать простые приложения на Python.
  • Иметь какой-либо опыт работы с Jupyter Notebook.

Admission

Разработчики: Лето 2021

Mentor

Vladimir Lagunov

Mentor's location

Remote

Product/Team

PyCharm

Tags

Jupyter
Kotlin
Python