Найти тему
big data - это просто

Шпора: срезы данных в Python

Проверить, есть ли в столбце элементы списка list:

df['column'].isin(list)

Получить день недели/год/дату:

df['datetime'].dt.date # получение даты
df['datetime'].dt.year # получение года
df['datetime'].dt.weekday # получение дня недели

Получить срезы данных:

df.query('column != ”value”') # получить всё, что НЕ равно "value"
df.query('column < column.mean()') # получить все значения, меньше среднего
df.query('column > @variable') # получить все значения больше заданной переменной variable

Поставить значение года на первое место:

pd.to_datetime(df['datetime'], yearfirst = True)

Сдвинуть дату и время:

data['shifted_dt'] = data['datetime'] + pd.Timedelta(hours=10) # сдвинуть на десять часов

Округлить время:

df['datetime'] = df['datetime'].dt.round('1H') # до 1 часа
df['datetime'] = df['datetime'].dt.round('1D') # до 1 дня
df['datetime'] = df['datetime'].dt.round('5T') # до 5 минут
df['datetime'] = df['datetime'].dt.round('10S') # до 10 секунд
df['datetime'] = df['datetime'].dt.floor('1H') # округлить в меньшую сторону
df['datetime'] = df['datetime'].dt.ceil('1H') # округлить в большую сторону

Создать сводную таблицу:

df_pivot = df.pivot_table(index = ['index_column'], columns = 'columns', values = 'values', aggfunc = 'function')
# index - столбец (столбцы), по которым происходит группировка
# columns - значения, которые будут сгруппированы
# values - значения, по которым нужно получить сводную таблицу
# aggfunc - что нужно сделать со значениями (медиана/среднее/количество/минимум/максимум

Получить крайние значения группы:

df.pivot_table(index='index', values='values', aggfunc='first') # первое значение
df.pivot_table(index='index', values='values', aggfunc='last') # последнее значение

Успехов в изучении Python!