Font size
WorksheetsЛекция 1 и 2
Total questions: 113
Worksheet time: 59mins
Каков вывод следующего кода? t = (1, 2, 3) + (4, 5) print(t)
(1, 2, 3, 4, 5)
(5, 4, 3, 2, 1)
[1, 2, 3, 4, 5]
[1, 2, 3), (4, 5)
Какой метод используется для удаления конкретного значения из списка?
remove()
pop()
delete()
del
Метод update используется для объединения одного словаря с другим.
True
False
Какой метод используется для проверки, содержит ли словарь определённый ключ?
in
contains()
has_key()
key_check()
Библиотека pandas предоставляет высокоуровневые структуры данных для работы со структурированными и табличными данными.
True
False
Какой из следующих объектов является изменяемым (mutable) в Python?
String
Tuple
List
None
Каков будет вывод этого кода? x = 10; y = 3; print(x // y)
3.33
3
3.0
4
Вывод этого кода: nums = [1,2,3]
[1, 2, 3]
[1,2,3,4]
[3, 2, 1]
[1,2]
print(sum(nums))
6
5
3
Error
Что выводит следующий код? a = [1,2,3] print(a[::-1])
[3,2,1]
[1,2,3]
[1,3,2]
Error
Вывод этого кода: d = {"a":1, "b":2} print(d.get("c", 0))
0
None
Error
2
Что возвращает следующий код? lst = [1,2,3,4] print(lst.index(3))
2
3
1
Error
Какой из следующих вариантов не является допустимым входным аргументом для создания DataFrame?
Одно целое число
Словарь списков
Массив NumPy
Список словарей
Каков вывод следующего кода? import numpy as np a = np.array([1, 2, 3]) print(a[1])
2
1
Что выводит этот код? import numpy as np a = np.array([[1, 2], [3, 4]]) print(a.shape)
(2, 2)
(2,)
(4,)
Error
Вывод следующего кода? import numpy as np a = np.array([1,2,3]) print(a.dtype)
int64
float64
object
Error
Каков результат?
import numpy as np
a = np.zeros((2,3))
array([[0., 0., 0.], [0., 0., 0.]])
array([[0, 0, 0], [0, 0, 0]])
array([[0., 0.], [0., 0.], [0., 0.]])
array([[0., 0., 0., 0.], [0., 0., 0., 0.]])
Вывод этого кода? import numpy as np a = np.array([1,2,3,4]) print(np.where(a>2))
(array([2,3]),)
(array([0,1]),)
[3 4]
Error
Что выводит этот код? import numpy as np a = np.array([1,2,3,4]) print(np.unique([1,2,2,3,3,4]))
[1 2 3 4]
[1 2 2 3 3 4]
[2 3 4]
Error
В чём заключается ключевое отличие между pandas Series и DataFrame?
Series является одномерным объектом, а DataFrame — двумерным.
Series может содержать несколько типов данных, а DataFrame — нет.
DataFrame не имеет индексов, в то время как Series всегда имеет их.
И Series, и DataFrame по умолчанию всегда пустые.
Какой метод позволяет выбирать данные из DataFrame по меткам строк и столбцов?
loc
iloc
index
slice
Каков будет вывод следующего кода? import pandas as pd data = {'A': [1, 2], 'B': [3, 4]} df = pd.DataFrame(data) print(df.iloc[1])
A 2, B 4
A 1, B 3
[1, 3]
Error: No row with index 1
Каков будет вывод следующего кода? import pandas as pd s = pd.Series([1, 2, 3], index=["a", "b", "c"]) print(s["b"])
2
1
"b"
Error: Invalid index access
Что возвращает этот код? import pandas as pd df = pd.DataFrame({'A':[1,2,3], 'B':[4,5,6]}) print(df[df['A']>1])
A B 1 2 5 2 3 6
A B 0 1 4
[2,3]
Error
Вывод этого кода? import pandas as pd df = pd.DataFrame({'A':[1,2,3], 'B':[4,5,6]}) print(df.iloc[1,1])
5
2
4
Error
Что выводит следующий код? import pandas as pd df = pd.DataFrame({'A':[1,2,3], 'B':[4,5,6]}) print(df.loc[0,'B'])
1
0
Error
4
Какую библиотеку обычно используют в pandas для чтения и обработки файлов Excel?
openpyxl
pickle
lxml
json
Какой метод pandas записывает DataFrame в формате pickle?
to_pickle()
write_pickle()
to_binary()
pickle_dump()
Что будет делать следующий код? import pandas as pd df = pd.read_excel('data.xlsx', sheet_name='Sheet1') print(df.head())
Выведет первые 5 строк из листа 'Sheet1' файла Excel.
Выведет все строки из листа 'Sheet1' файла Excel.
Создаст новый Excel-файл с именем 'data.xlsx'.
Удалит лист 'Sheet1' из файла Excel.
Что выводит этот код? import pandas as pd df = pd.read_csv('data.csv', thousands=',')
Преобразует числа вида '1,000' в 1000
Использует ',' как разделитель
Считывает все значения как строки
Error
Вывод этого кода? import pandas as pd df = pd.read_csv('data.csv', skip_blank_lines=True)
Игнорирует пустые строки в CSV
Считывает пустые строки как NaN
Error
Удаляет CSV
Каков вывод этого кода? import pandas as pd df = pd.read_csv('data.csv', low_memory=False)
Что делает этот код? import pandas as pd df = pd.read_csv('SELECT * FROM table1', conn, index_col='ID')
Считывает SQL-таблицу и задаёт столбец 'ID' в качестве индекса
Записывает SQL-таблицу
Преобразует SQL-таблицу в CSV
Создаёт новую SQL-таблицу
Что делает этот код? import pandas as pd df = pd.read_csv('data.csv', header=None) print(df.head())
Считывает CSV без использования первой строки в качестве заголовков
Считывает CSV, используя первую строку как заголовок
Считывает только первую строку
Записывает CSV без заголовков
Как удалить строки, в которых все значения равны NaN?
Удаляет строки, в которых все значения равны NaN
Удаляет любую строку с NaN
Удаляет столбец с NaN
Заполняет NaN
Как можно удалить специальные символы из строкового столбца?
Удаляет все неалфавитно-цифровые символы
Преобразует в нижний регистр
Преобразует в верхний регистр
Заменяет пробелы на подчёркивания
Вывод этого кода? import pandas as pd df = pd.DataFrame({'A':[1,2,3,4,5]}) Q1 = df['A'].quantile(0.25) Q3 = df['A'].quantile(0.75) IQR = Q3 - Q1 df_filtered = df[(df['A'] >= Q1 - 1.5*IQR) & (df['A'] <= Q3 + 1.5*IQR)] print(df_filtered)
Фильтрует выбросы на основе IQR
Оставляет только выбросы
Как заменить все бесконечные значения на NaN?
Заменяет +inf и -inf на NaN
Удаляет бесконечные значения
Преобразует в ноль
Вызывает ошибку
Что делает этот код?
Преобразует все строки в столбце в нижний регистр
Преобразует в верхний регистр
Удаляет пробелы
Удаляет столбец
Как можно удалить столбцы с более чем 50% пропущенных значений?
Удаляет столбцы с более чем 50% значений NaN
Удаляет строки с более чем 50% NaN
Заменяет NaN на 0
Оставляет только строки с более чем 50% непустых значений
Что создаёт этот код? import pandas as pd df1 = pd.DataFrame({'key':[1,2,3],'A':[10,20,30]}) df2 = pd.DataFrame({'key':[3,4,5],'B':[300,400,500]}) pd.concat([df1, df2], axis=0, ignore_index=True)
Объединяет df1 и df2 по вертикали и сбрасывает индекс
Объединяет по горизонтали
Выполняет merge
Вызывает ошибку
Каков результат этого кода? import pandas as pd df = pd.DataFrame({'X':[1,2],'Y':[3,4]}) pd.melt(df, id_vars=['X'])
Оставляет 'X' фиксированным и преобразует 'Y' в длинный формат
Оставляет 'Y' фиксированным и преобразует 'X'
Удаляет столбец 'Y'
Вызывает ошибку
Outer join: сохраняет все ключи из обоих DataFrame и заполняет пропуски NaN
Left join
Inner join
Right join
Вывод этого кода? import pandas as pd df = pd.DataFrame({'id':[1,1,2,2],'variable':['X','Y','X','Y'],'value':[10,20,30,40]}) df.pivot(index='id', columns='variable', values='value')
Преобразует данные из длинного формата в широкий с 'id' в качестве индекса
Преобразует из широкого формата в длинный
Удаляет столбец 'value'
Вызывает ошибку
В чём разница между merge и concat?
merge объединяет по столбцам или ключам, concat склеивает DataFrame вдоль оси
merge выполняет конкатенацию, concat — объединение
Они делают одно и то же
merge удаляет дубликаты, concat — нет
Как можно переупорядочить уровни в MultiIndex?
Меняет местами позиции уровней
Сортирует индекс
Удаляет уровень
Создаёт новый столбец
В чём заключается ключевое отличие между reorder_levels() и swaplevel() при иерархической индексации?
reorder_levels() позволяет произвольно переупорядочивать уровни индекса, тогда как swaplevel() меняет местами только два уровня
swaplevel() может переупорядочивать несколько уровней, а reorder_levels() — только два
reorder_levels() можно использовать с неиерархическими индексами, а swaplevel() — нельзя
swaplevel() требует указания всех уровней, а reorder_levels() по умолчанию меняет первые два
В операции merge() что делает параметр how='outer'?
Выполняет объединение ключей обоих DataFrame, включая все строки из обоих
Включает только строки с ключами, присутствующими в обоих DataFrame
Вывод этого кода? import pandas as pd arrays = [['A','A','B','B'], [1,2,1,2]] index = pd.MultiIndex.from_arrays(arrays, names=('letter','num')) df = pd.DataFrame({'val':[10,20,30,40]}, index=index) df.loc['A']
Выбирает все строки, где первый уровень MultiIndex равен 'A'
Выбирает строки, где второй уровень равен 'A'
Возвращает столбцы с именем 'A'
Вызывает ошибку
Вывод этого кода? import pandas as pd df = pd.DataFrame({'id':[1,1,2,2],'variable':['X','Y','X','Y'],'value':[10,20,30,40]}) df.pivot(index='id', columns='variable', values='value')
Преобразует данные из длинного формата в широкий с 'id' в качестве индекса
Преобразует из широкого формата в длинный
Удаляет столбец 'value'
Вызывает ошибку
Как повернуть подписи делений по оси y?
Поворачивает подписи оси y на 90 градусов
Поворачивает ось x
Поворачивает график
Вызывает ошибку
Как изменить ширину столбцов в столбчатой диаграмме?
Устанавливает ширину столбцов равной 0.3
Устанавливает расстояние между столбцами
Изменяет цвет
Вызывает ошибку
Как построить гистограмму с нормализованными частотами?
Строит гистограмму, нормализованную до плотности вероятности
Строит гистограмму по абсолютным значениям
Строит линейный график
Вызывает ошибку
Какие параметры управляют расстоянием между подграфиками в matplotlib?
(a)
Какое поведение по умолчанию используется для соединения точек на линейном графике matplotlib?
Линейная интерполяция
Кубическая интерполяция
Ступенчатое соединение
Без соединения
Какая функция используется для задания подписи оси x в matplotlib?
set_xlabel()
set_xlim()
set_xticks()
set_title()
Какая функция используется для создания легенды на графике?
plt.legend()
plt.show_legend()
plt.add_legend()
plt.legend_box()
Как можно настроить переменные строк и столбцов в seaborn FacetGrid?
Передать их в параметры row и col функции sns.FacetGrid()
Задать их с помощью grid.set_rows() и grid.set_cols()
Определить их в параметре facet_vars FacetGrid()
Использовать параметры rows и columns в FacetGrid()
Что происходит с пропущенными значениями в ключе группировки при выполнении операции GroupBy?
Они исключаются из результата
Они заменяются нулями
Они включаются как отдельная группа
Вызывается ошибка
При группировке по нескольким ключам, каким является тип первого элемента в кортеже группы?
Кортеж значений ключей
Одно значение ключа
DataFrame pandas
Список сгруппированных строк
Что даёт группировка по словарю в pandas?
Сопоставляет конкретные значения с именами групп
Создаёт иерархические группы
Что возвращает объект GroupBy при переборе в цикле?
Кортежи, содержащие ключ группы и данные группы
Только ключ группы
Только данные группы
Списки сгруппированных строк
Как применить разные агрегирующие функции к разным столбцам? df.groupby('Category').agg({'Value':'sum','Score':'max'})
Агрегирует Value по сумме и Score по максимуму для каждой группы
Агрегирует всё по сумме
Агрегирует всё по максимуму
Вызывает ошибку
Как выполнить сводную таблицу с несколькими индексами и столбцами?
Создаёт иерархический индекс и столбцы с агрегацией суммы
Создаёт плоский индекс
Удаляет Region
Вызывает ошибку
Как посчитать количество вхождений в crosstab?
Подсчитывает частоту каждой комбинации Category/SubCategory
Складывает значения
Вычисляет среднее
Вызывает ошибку
Как посчитать количество уникальных значений в каждой группе?
Возвращает количество уникальных значений SubCategory для каждой Category
Возвращает общее количество
Возвращает среднее
Вызывает ошибку
Вывод этого кода? df.groupby('Category')['Value'].agg(['sum','count','mean'])
Возвращает сумму, количество и среднее значение для каждой категории
Возвращает только сумму
Возвращает только среднее
Вызывает ошибку
Что создаёт этот код?
Возвращает сумму значений Value для каждой категории
Возвращает среднее
Возвращает количество
Вызывает ошибку
Подсчитывает строки для каждой категории Усредняет 'Value' для каждой категории Вызывает ошибку
Суммирует 'Value' для каждой категории
Подсчитывает строки для каждой категории
Усредняет 'Value' для каждой категории
Вызывает ошибку
Как применить несколько агрегирующих функций и переименовать столбцы? df.groupby('Category')['Value'].agg(Total='sum', Average='mean')
Возвращает результат группировки с переименованными столбцами
Вызывает ошибку в старых версиях pandas
Агрегирует только сумму
Агрегирует только среднее
Что вернёт pd.to_datetime(["2018-02-29"])?
ValueError из-за некорректной даты
NaT для некорректной даты
Объект datetime, представляющий 28 февраля 2018 года
Пустой DataFrame
При сборке объектов datetime с помощью pd.to_datetime(df), что происходит, если один из столбцов отсутствует (например, "hour")?
Отсутствающий столбец заполняется значениями по умолчанию (например, 0 для часов)
Вызывается ошибка из-за отсутствующего столбца
Операция пропускает строки с отсутствующими столбцами
DataFrame преобразуется без отсутствующего поля
Какой параметр в pd.to_datetime() позволяет задать временную зону результирующих datetime-объектов?
utc
tz
timezone
localize
Что происходит, если параметру freq="infer" не удаётся определить согласованную частоту?
Вызывается ValueError
Индекс создаётся без частоты
Параметр freq по умолчанию становится дневным
Выдаётся предупреждение
Какая строка формата корректно разбирает "12-11-2010 00:00"?
%d-%m-%Y %H:%M
%Y-%m-%d %H:%M
%d/%m/%Y %H:%M
%m-%d-%Y %H:%M
Что задаёт параметр freq="M" в pd.date_range()?
Месячную частоту
Минутную частоту
Недельную частоту с привязкой к понедельнику
Частоту в миллисекундах
Какой метод преобразует Series с периодами обратно во временные метки (timestamps)?
to_timestamp()
to_period()
to_datetime()
to_dates()
Как выполнить прямое заполнение пропущенных временных меток после ресемплинга?
Заполняет NaN предыдущим доступным значением
Заполняет нулями
Удаляет пропущенные значения
Вызывает ошибку
Как вычислить скользящую корреляцию между двумя Series?
Возвращает скользящую корреляцию с окном в 5 строк
Возвращает ковариацию
Возвращает сумму
Вызывает ошибку
Как сдвинуть значения, используя временной сдвиг?
Сдвигает значения на 3 дня вдоль datetime-индекса
Сдвигает на 3 строки
Удаляет строки
Вызывает ошибку
Как создать диапазон дат только по рабочим дням?
Возвращает даты без выходных
Возвращает все дни
Возвращает только выходные
Вызывает ошибку
Как сдвинуть даты с использованием смещения к концу месяца?
Сдвигает каждую дату к концу месяца
Сдвигает к началу месяца
Вызывает ошибку
Удаляет индекс
Как выполнить сдвиг на пользовательское количество рабочих дней?
Сдвигает индекс вперёд на 5 рабочих дней
Сдвигает на 5 календарных дней
Вызывает ошибку
Сдвигает значения
Как выполнить обратное заполнение пропущенных временных меток после апсемплинга?
Заполняет NaN следующим допустимым значением
Заполняет нулями
Удаляет строки
Вызывает ошибку
Как сдвинуть значения на 2 периода с помощью shift?
Сдвигает значения вниз на 2 строки
Сдвигает индекс
Удаляет строки
Вызывает ошибку
Каков будет вывод? s = pd.Series([1,2,3], index=pd.date_range('2023-01-01', periods=3)) s.rolling(2, min_periods=1).sum()
2023-01-01 1.0 2023-01-02 3.0 2023-01-03 5.0 dtype: float64
2023-01-01 NaN 2023-01-02 3 2023-01-03 5 dtype: float64
2023-01-01 1 2023-01-02 2 2023-01-03 3 dtype: int64
Вызывает ошибку
Каков будет вывод? df = pd.DataFrame({'value':[1,2,3]}, index=pd.period_range('2023-01','2023-03', freq='M')) df.index.to_timestamp()
2023-01-01 1 2023-02-01 2 2023-03-01 3 Freq: MS, Name: value, dtype: int64
2023-01-31 1 2023-02-28 2 2023-03-31 3 dtype: int64
Возвращает NaN
Вызывает ошибку
Каков будет вывод? s = pd.Series([10,20,30], index=pd.date_range('2023-01-01', periods=3)) s.ewm(span=2).mean()
2023-01-01 10.000000 2023-01-02 16.666667 2023-01-03 26.666667 dtype: float64
2023-01-01 10 2023-01-02 20 2023-01-03 30 dtype: int64
2023-01-01 10 2023-01-02 15 2023-01-03 25 dtype: int64
Вызывает ошибку
Какой из следующих вариантов является допустимым входом для создания pd.DatetimeIndex?
Список строк дат в формате ISO-8601
Словарь строк дат
Как преобразовать столбец в формат datetime в pandas?
Преобразует столбец 'date' в объекты datetime
Преобразует столбец в строки
Преобразует в числовой формат
Вызывает ошибку
Как установить столбец datetime в качестве индекса?
Устанавливает столбец 'date' в качестве индекса
Удаляет столбец
Преобразует индекс в числовой
Вызывает ошибку
Преобразует категориальные значения в строковый тип
Преобразует в строковый тип
Преобразует в числовой формат
Удаляет значения
Вызывает ошибку
Вывод этого кода? df = pd.DataFrame({'A':[1,2,3],'B':[4,5,6]}) df.applymap(lambda x: x**2)
A B 0 1 16 1 4 25 2 9 36
A B 0 1 4 1 4 2 5 2 3 6
Produces error
Вывод этого кода? df = pd.DataFrame({'A':[1,2,3]}) df.transform(lambda x: x**3)
0 1 2 2 3
0 3 1 6 2 9
Produces error
Returns a Series
Что возвращает transform?
Возвращает объект той же формы, что и исходный DataFrame или Series
Всегда возвращает одно значение на столбец
Всегда возвращает одно скалярное значение
Вызывает ошибку
Что происходит, если использовать map для DataFrame?
Вызывает ошибку; map работает только с Series
Применяется ко всем элементам
Как преобразовать столбец в категориальный тип?
Преобразует столбец в категориальный тип
Преобразует в строковый тип
Преобразует в числовой тип
Вызывает ошибку
Что такое z-score?
Количество стандартных отклонений, на которое значение отличается от среднего
Разница между медианой и средним
Отношение максимума к минимуму
Размах данных
Вывод этого кода? from scipy.stats import zscore import pandas as pd s = pd.Series([1,2,3,4,5]) zscore(s)
array([-1.41421356, -0.70710678, 0., 0.70710678, 1.41421356])
array([1,2,3,4,5])
array([0,0,0,0,0])
Produces error
Каков будет вывод этого кода? import pandas as pd import numpy as np df = pd.DataFrame({'A':[1,2,3,4,5], 'B':[5,4,3,2,1]}) df.corr(method='kendall')
A B A 1.0 -1.0 B -1.0 1.0
A B A 1.0 1.0 B 1.0 1.0
Produces error
A B A 0.5 -0.5 B -0.5 0.5
Каков будет вывод этого кода? s = pd.Series([1,2,2,3,3,3,4,4,4,4]) s.value_counts(normalize=True)
4 0.4 3 0.3 2 0.2 1 0.1 dtype: float64
4 4 3 3 2 2 1 1 dtype: int64
Produces error
1 0.1 2 0.2 3 0.3 4 0.4
Вывод этого кода? s = pd.Series([1,2,3,4,5]) np.cumsum((s - s.mean())**2)
Series кумулятивных квадратов отклонений
Series кумулятивных сумм
Series кумулятивных средних
Produces error
Что вычисляет этот код? df = pd.DataFrame({'X':[1,2,3,4,5], 'Y':[5,4,3,2,1]}) (df.rank() - df.mean())/df.std()
Стандартизованные ранги каждого столбца
Z-оценки исходных значений
Нормированные значения от 0 до 1
Produces error
Каков будет вывод этого кода? import pandas as pd import numpy as np df = pd.DataFrame({ 'date': pd.date_range('2023-01-01', periods=5), 'val': [1, np.nan, 3, np.nan, 5], 'cat': ['A','B','A','B','C'] }) df['val'] = df['val'].interpolate(method='linear') df.groupby('cat')['val'].mean()
cat A 2.0 B 3.0 C 5.0 Name: val, dtype: float64
cat A 2.0 B 2.0 C 5.0 Name: val, dtype: float64
Produces error
Returns DataFrame instead of Series
Что вычисляет этот код? df['val'].rolling(2, min_periods=1).apply(lambda x: np.prod(x))
Скользящее произведение значений по окну в 2 строки, считая даже при одном значении
Скользящая сумма по 2 строкам
Кумулятивное произведение
Produces error
Каков будет вывод? df['cat'] = df['cat'].astype('category') df['cat'].cat.codes
0 0 1 1 2 0 3 1 4 2 dtype: int8
Produces error
Returns original values
Returns strings of categories
Каков результат этой многошаговой операции? df['date'] = pd.to_datetime(df['date']) df.set_index('date', inplace=True) df.resample('2D')['val'].sum()
date 2023-01-01 3.0 2023-01-03 3.0 2023-01-05 5.0 Freq: 2D, Name: val, dtype: float64
Produces error
Returns cumulative sum instead
Returns original daily values
Вывод этого кода? df['val_z'] = (df['val'] - df['val'].mean()) / df['val'].std() df.groupby('cat')['val_z'].mean()
cat A 0.0 B 0.0 C 0.0 Name: val_z, dtype: float64
Produces error
Returns original val
Non-zero values
Какой метод используется для добавления нового элемента в конец списка?
insert()
append()
extend()
add()
Какой из следующих методов используется для группировки данных в DataFrame?
sort_values()
groupby()
aggregate()
filter()
Какой метод pandas используется для удаления строк с отсутствующими значениями?
dropna()
remove_na()
delete_na()
clear_na()
Что делает метод groupby() в pandas?
Фильтрует данные по условию
Сортирует данные по указанному столбцу
Объединяет два DataFrame
Группирует данные по указанному столбцу
Какой метод используется для получения первых n строк DataFrame?
first()
head()
begin()
top()
