Библиотеки Python

90 задачвместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: ✓ успешные, ✗ неуспешные.

Обработка пропусков

df.dropna() - удаляет строки с пропусками
df.fillna(value, inplace=True) - заполняет пропуски значением value
df.fillna(df.mean(), inplace=True) - заполняет средним значением

Параметр inplace:
inplace=False (по умолчанию) - создает копию с изменениями
inplace=True- изменяет исходный DataFrame напрямую

Метод fillna() с словарем позволяет заполнить пропуски в разных столбцах различными значениями за одну операцию. Синтаксис:
df.fillna({'column1': value1, 'column2': value2, ...})
Пример
 
df = ...
# Заполнение разными значениями
fill_dict = {
    'age': df['age'].mean(),      # Средним значением
    'salary': df['salary'].median(), # Медианой
    'city': 'Unknown'             # Константой
}

df_filled = df.fillna(fill_dict)
print(df_filled)
 

Задание

Проанализируйте датасет супергероев, считав его из прикрепленного файла
Напишите программу, который ищет и обрабатывает пропуски. 

  1. Заполните пропуски в power и intelligence средними значениями
  2. Заполните пропуски в costume_cost медианным значением 
  3. Заполните пропуски в first_appearance значением 1950 
  4. Для текстовых полей (name, alias, universe) заполните пропуски строкой Unknown
Выведите обработанный датасет на экран, используя print(df)

Промахом считается выстрел с расстоянием больше 10.0. Определите, у какого игрока был самый худший одиночный выстрел (максимальное значение в массиве)? А сколько всего фатальных промахов совершила вся команда?

Тренеры заметили, что некоторые игроки сильно «разогреваются» к концу сессии. Проверьте гипотезу: сравните среднюю точность каждого игрока по первым пяти выстрелам и по последним пяти. У кого разница в пользу последних выстрелов наибольшая? (Значит, он "разыгрывается").
Точность — это хорошо, но стабильность — лучше! Найдите игрока с самой маленькой дисперсией или стандартным отклонением результатов. Это значит, что он стабильно стреляет примерно с одинаковой точностью.

Напишите программу на Python, которая:

  1. Считывает математическое выражение из строки.

  2. Преобразует строку в символьное выражение с помощью SymPy.

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

  4. Выводит результат.

Напишите программу, которая запрашивает математическое выражение в виде строки и два параметра целого типа, использует библиотеку SymPy для его парсинга и вычисления, а затем выводит результат.
Программа должна обрабатывать простые арифметические операции, такие как сложение, вычитание, умножение и деление, а также возведение в степень.
✓ 21✗ 68600лёгкаяВойти и решать
Напишите программу, которая анализирует последовательность ДНК.
Формат входных данных
Единственная строка содержит последовательность ДНК.

Формат выходных данных
Запишите четыре строки, являющиеся ответами на задания задачи:
1) Длина последовательности.
2) Комплементарную цепь.
3) Обратная комплементарная цепь
4) Транскрипцию последовательности (преобразование ДНК в РНК).
✓ 34✗ 56400лёгкаяВойти и решать
Разработайте класс EvenList "Список четных целых чисел". Класс содержит в качестве атрибута только список четных целых чисел.

Для класса EvenList определите конструктор, который может принимать следующие виды параметров:

  • Ни одного параметра (в этом случае список будет пустой).
  • Один параметр типа List, в этом случае из переданного списка выбираются четные числа и записываются в результирующий список (в том же порядке следования, что и в исходном списке).
  • Объект EvenList, в этом случае список будет равняться списку объекта, переданного в конструктор (порядок элеметов должен сохраняться).
Добавьте в реализацию класса:
  1. Метод addnum(), который добавляет к списку число. Если методу addnum() передается целое четное число, то оно добавляется в список, все остальные варианты входных данных игнорируются, при этом выводится сообщение "Wrong data".
  2. Метод __sub__, позволяющий выполнять операцию «A - num», которая удаляет из объекта A класса EvenList все вхождения числа num. Если такого числа в списке нет, то  список не изменяется, при этом выводится сообщение "The number is missing". В результирующем списке порядок оставшихся элементов должен быть сохранен.
  3. Метод, который выводит элементы списка, где каждый элемент разделен символом точка с запятой (;).

На проверку отправьте только сам класс.
ООП-12#55928
 В чем отличие между методами класса (объявленными через @classmethod) и статическими методами (объявленными через @staticmethod)?
  1. методы класса предназначены для работы с атрибутами класса и переданными аргументами, а статические - только с переданными им аргументами
  2. методы класса способны обращаться и к атрибутам класса и к локальным атрибутам объекта, из которого они были вызваны, а статические методы работают только с переданными им аргументами
  3. статические методы предназначены для работы с атрибутами класса и переданными аргументами, а методы класса - только с переданными им аргументами
  4. статические методы предназначены для работы с локальными атрибутами объектов класса, а методы класса не имеют такой возможности
ООП-7#55923
Какую роль играет параметр self в методах класса?
  1. это просто обязательный (зарезервированный) параметр для методов класса, через который можно передавать произвольные данные
  2. это ссылка на класс, которому принадлежит метод
  3. это ссылка на объект класса, из которого был вызван метод
  4. это ссылка на текущий метод класса

Задание 1.

Объявите класс с именем Clock и определите в нем следующие переменные и методы:

- приватная локальная переменная time для хранения текущего времени, целое число (своя для каждого объекта класса Clock с начальным значением 0);
- публичный метод set_time(tm) для установки текущего времени (присваивает значение tm приватному локальному свойству time, если метод check_time(tm) возвратил True);
- публичный метод get_time() для получения текущего времени из приватной локальной переменной time;
- приватный метод класса check_time(tm) для проверки корректности времени в переменной tm (возвращает True, если значение корректно и False - в противном случае).

Проверка корректности выполняется по критерию: tm должна быть целым числом, больше или равна нулю и меньше 100 000.

Объекты класса Clock создаются следующим образом :

clock = Clock(время)

Задание 2
Создайте объект clock класса Clock и установите время, равным 4530.

20#50314
Что позволяет делать функция groupby() в Pandas?
  1. Группировать столбцы DataFrame
  2. Группировать строки DataFrame на основе условия
  3. Группировать данные на основе одного или нескольких столбцов
  4. Группировать данные на основе индекса
Что представляет собой атрибут shape в DataFrame?
  1. Количество строк и столбцов
  2. Только количество строк
  3. Только количество столбцов
  4. Типы данных столбцов
Каково назначение метода head() в Pandas?
  1. Для отображения нескольких последних строк фрейма данных
  2. Для отображения нескольких первых строк DataFrame
  3. Для отображения сводной статистики фрейма данных
  4. Для отображения сводной статистики фрейма данных
Какой тип индекса используется по умолчанию при создании DataFrame?
  1. Числовой индекс, начиная с 1
  2. Буквенно-цифровой индекс, основанный на номере строки
  3. Числовой индекс, начинающийся с 0
  4. Индекс на основе даты
Какая структура данных Pandas используется для одномерных данных?
  1. DataFrame
  2. Array
  3. Series  
  4. List  
Поделиться
Класснуть