Анализ данных (Data analysis)
46.3K subscribers
2.33K photos
269 videos
1 file
2.06K links
Data science, наука о данных.

@haarrp - админ

@itchannels_telegram - 🔥 главное в ит

@ai_machinelearning_big_data - ML

@machinelearning_interview - вопросы с собесдований по Ml

РКН: clck.ru/3FmyAp
Download Telegram
🔎 13 Инструкций SQL для решения 90% ваших задач по обработке данных

Независимо от того, являетесь ли вы новичком в SQL или имеете некоторый опыт работы с ним, эта статья предоставит вам ценную информацию для подготовки к интервью и практические советы по работе с данными .

Статья

@data_analysis_ml
👍17🥱72👎1🔥1🏆1
🌐 Пошаговое руководство по NLP: конструирование признаков текстовых данных

Конструирование признаков (feature engineering)  — процесс выбора и создания наиболее релевантных и полезных признаков для ввода в модель машинного обучения. Это важнейший шаг в ходе МО, который может существенно повлиять на производительность, сложность и способность модели обобщать новые данные. Тщательно выбирая и конструируя признаки, используемые в качестве входных данных, можно повысить точность и эффективность модели и избежать ее чрезмерного обучения.

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

Чтобы обучить модель МО на данных твитов, сначала нужно извлечь из них признаки. Рассмотрим различные типы признаков, которые можно извлечь из твитов, и способы их получения в Python.

Читать

@data_analysis_ml
👍15👎21🔥1
Анализ данных (Data analysis)
27 февраля стартовал финал совместного профиля «Искусственный интеллект» НТО и Академии искусственного интеллекта для школьников БФ Сбербанка «Вклад в будущее» 📌 3 дня продлится командная работа над финальной задачей. Sber AI подготовил задание по разработке…
Завершился финал по профилю «Искусственный интеллект» Национальной технологической олимпиады

Ранее мы писали, что финал стартовал 27 февраля и продлится он вплоть до 3 марта. Школьники работали над задачей от Sber AI в командном туре, а в индивидуальном — показывали свои знания математики и информатики. По итогам финала были определены:

🏅 5 команд-победителей — они получат денежные сертификаты на образование. Напомним, призовой фонд конкурса — более 4 млн рублей.

🏅8 победителей и 17 призеров индивидуального тура — они получат преференции при поступлении в топ-вузы нашей страны, а также приглашения на прохождение оплачиваемой стажировки в Сбере и командах-партнерах. Направление стажировки — «Машинное обучение».

«Вы уже все, уважаемые конкурсанты, победители. Смело идите вперед, покоряйте свои вершины. Новых вам успехов и больших побед», — поздравила конкурсантов ректор Национального исследовательского технологического института «МИСиС» Алевтина Черникова.
👍7
Раскройте потенциал Python Numpy: руководство для начинающих в науке о данных

Смотреть

@data_analysis_ml
👍15🔥32👎1🌚1
Введение в развёртывание ML: Flask, Docker и Locust

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

Изучение этой части рабочего процесса Data Science может показаться непосильным, особенно если у вас нет большого опыта разработки программного обеспечения. Не бойтесь, основная цель этой статьи — познакомить вас с одним из самых популярных фреймворков для развёртывания на Python – Flask. Кроме того, вы узнаете, как контейнеризировать развёртывание и измерить его производительность – два аспекта, которые часто упускаются из виду.

Читать
Код

@data_analysis_ml
👍13🔥21
🔎 Как найти информативные фичи при работе с данными

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

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

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

Читать

@data_analysis_ml
👍132🔥2🤣1
🛠 7 инструментов Python, которые должен иметь каждый разработчик машинного обучения и Data Science специалист.

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

Вы увидите инструменты, начиная от сред разработки (IDE), таких как PyCharm, и заканчивая инструментами тестирования браузера, такими как Selenium.

Читать

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13👎31🥰1🤔1
Как использовать Регулярные выражения в Pandas для работы со строками

Регулярное выражение – это самый мощный метод очистки и извлечения данных. Если вы когда-либо работали с большим текстовым набором данных, вы бы знали, насколько много это отнимает времени и энергии.

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

Читать

@data_analysis_ml
👍10🔥52
🖥 Ускорьте код Pandas в 120 раз — Реальные методы ускорения


Pandas – это популярная и надёжная библиотека анализа данных на Python. Она предоставляет структуры данных и функции для управления числовыми таблицами и данными временных рядов.

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

Читать

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍155🔥2
🖼 Применение Аугментации с Даталодером

Важным для качественного решения задач CV (Computer Vision) с помощью нейронных сетей, помимо наличия качественной модели (зачастую уже предобученной на других задачах), также является датасет с достаточным количеством изображений (несколько десятков тысяч). Получить необходимый объем размеченных изображений зачастую довольно затруднительно, тогда на помощь может прийти аугментация. Аугментация позволяет увеличить объем исходного количества изображений за счет их изменений: поворот, растягивание/сжатие, изменение цветов и т.д.

Для сокращения времени процесса обучения нейронных сетей используют графические ускорители (GPU), объем памяти которых не способен вместить одновременно весь датасет и обучаемую модель. Для решения этой проблемы используют DataLoader, который «скармливает» нейросети данные из датасета порционно (батчами).

И кажется, что нет проблем: взять готовые архитектуры для аугментации, применить к датасету и поместить в даталодер. Однако, на данный момент DataLoader и Dataset в Pytorch не работают «из коробки» с популярной библиотекой для аугментации albumentations.

Выходом из этого является написание собственного класса Dataset. В данном случае — это Dataset для изображений Imagefolder (структура хранения изображений, при которой каждый класс хранится в папке с соответствующим именем). Для работы понадобится импорт следующих библиотек:

import os
import albumentations as A
from torchvision import datasets, transforms
from torch.utils.data import Dataset, DataLoader

Создадим свой собственный класс ImageFolder, наследуя из класса Dataset:
class ImageFolder(Dataset):
def __init__(self, root_dir, transform=None, total_classes=None):
self.transform = transform
self.data = []

if total_classes:
self.classnames = os.listdir(root_dir)[:total_classes] # for test
else:
self.classnames = os.listdir(root_dir)

for index, label in enumerate(self.classnames):
root_image_name = os.path.join(root_dir, label)

for i in os.listdir(root_image_name):
full_path = os.path.join(root_image_name, i)
self.data.append((full_path, index))

def __len__(self):
return len(self.data)

def __getitem__(self, index):
data, target = self.data[index]
img = np.array(Image.open(data))

if self.transform:
augmentations = self.transform(image=img)
img = augmentations["image"]

target = torch.from_numpy(np.array(target))
img = np.transpose(img, (2, 0, 1))
img = torch.from_numpy(img)

return img, target

Далее создадим правило, по которому исходное изображение будет меняться:

SIZE = 244
SIZE2 = 256

train_transform_alb = A.Compose(
[
A.Resize(SIZE2, SIZE2),
A.ShiftScaleRotate(shift_limit=0.05, scale_limit=0.05, rotate_limit=15, p=0.5),
A.RandomCrop(SIZE, SIZE),
A.RGBShift(r_shift_limit=15, g_shift_limit=15, b_shift_limit=15, p=0.5),
A.RandomBrightnessContrast(p=0.5),
A.Normalize(mean=(0.485, 0.456, 0.406), std=(0.229, 0.224, 0.225)),
]
)

В данном случае каждое изображение с какой-то долей вероятности (p) поворачивается, сжимается, обрезается, меняет цвета и яркость. А еще все изображения приводятся к одному размеру, а также нормализуются.

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

train_transform_base = A.Compose(
[
A.Resize(SIZE2, SIZE2),
A.CenterCrop(SIZE, SIZE),
A.Normalize(mean=(0.485, 0.456, 0.406), std=(0.229, 0.224, 0.225))
]
)


Читать дальше

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍31
🔍 Что говорить на поведенческом интервью по науке о данных.

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

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

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

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

Итак, у вас появляется прекрасная возможность заявить о себе как о перспективном кандидате. Поэтому важно заранее подготовить ответы на эти вопросы.

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

1. Расскажите о своем бэкграунде
Для начала расскажите о своем профессиональном опыте и полученном образовании.

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

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

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

2. Выразите готовность принять ценности компании
Теперь настало время показать, что вы готовы стать частью команды.

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

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

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

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

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍183🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
🎇 Создавайте потрясающие Фрактальные рисунки с помощью Python

Небольшое учебное пособие для начинающих и заядлых любителей математики.

В этой статье вы узнаете, как построить базовые (но очень красивые) множества Мандельброта, используя Matplotlib и NumPy.

Читать

@data_analysis_ml
👍14🔥42
Forwarded from Data Science Jobs
Data analytic (middle, senior)

Формат: классный офис в Москве/гибрид/удаленно;
Доход: 180-300К руб.;
Форма оформления: по ТК/ИП.

О нас: Мы занимаемся разработкой data-платформы, в рамках которой развиваются различные data-продукты:
• рекомендательные системы;
• сервисы аналитики и визуализации данных;
• ML-модели;
• иные решения для решения бизнес-задач.
Наша команда это 25 инженеров с сильнейшими компетенциями в ML, аналитике и работе с данными, и сейчас мы ищем классных ребят для дальнейшего роста.
У нас нет долгих согласований и бюрократии. Мы стремимся к быстрому внедрению в production, с последующей работой над улучшениями.

Что нужно будет делать:
• сегментация пользователей и анализ пользовательских данных;
• проведение ad-hoc исследований и создание аналитических решений для включения в продукт;
• работа с визуализацией данных.

Будет классно, если у тебя:
• знание методов сбора и подготовки данных.
• практический опыт развития продуктов на данных.
• SQL (оконные функции, вложенные запросы, регулярные выражения).
• владение инструментами визуализации данных (используем Tableau).
• методы статистического анализа.
• опыт работы с Python, опыт работы с etl/elt.
Большой плюс: опыт работы с большими наборами данных.

Мы предлагаем:
• работу в аккредитованной IT компании с сильнейшей командой в разных масштабных проектах;
• гибридный график работы 5/2, с 10:00 - 19:00;
• ДМС со стоматологией;
• в современном офисе в стиле Лофт с капсулой медитации, спортзалом, большой современной библиотекой и кабинетом для записи подкастов и треков;
• комфортную кухню с холодильником, кофемашиной, тостером, микроволновкой и Magic Bullet;
• холодильник с напитками (соки, энергетики, вода и т.д.) и едой (сыры, колбасы, сырки, фрукты и м.ч.);
• каждую пятницу совместные обеды за счет компании.

За подробностями пиши: tg @naikava

@datascienceml_jobs - вакансии Data Science
👍4🔥21
⭐️ Топ-5 ресурсов для лёгкого изучения Глубокого Обучения с Подкреплением.

Здесь я собрал список полезных, на мой взгляд ресурсов для изучения Глубокого Обучения с Подкреплением.

1. Hugging Face Deep Reinforcement Learning course: Возможно, лучший курс, который я когда-либо проходил. В потрясающей работе Томаса Симонини вы одновременно узнаете, как программировать и использовать алгоритмы DRL, используя среды StableBaselines3 и OpenAI Gymnasium, а также теорию, лежащую в основе обучения с глубоким подкреплением.

2. Foundations of Deep Reinforcement Learning
Я включил эту книгу в данную рубрику, потому что у неё есть важное преимущество: её очень легко читать и она дает хорошее базовое представление о теме.

3. Welcome to Spinning Up in Deep RL by OpenAI!
Данный источник содержит большое количество доступных для исследований тем, таких как ключевые статьи в DRL и полезные бенчмарки.

4. Reinforcement Learning book by Sutton and Barto
рекомендую вам эту книгу, чтобы вы изучили основы обучения с подкреплением. Это продвинутая книга, но почти без практических задач.Тем не менее, это классика, и из-за этого я думаю, что вы должны прочитать её, если собираетесь работать в этой области.

5.
Li, Y. (2017). Deep reinforcement learning: An overview. arXiv preprint arXiv:1701.07274.
Наконец, если вам нужно выбрать направление своего исследования и получить широкое представление о процессе глубокого обучения с подкреплением, то это отличная статья. Я рекомендую вам прочитать ее, а затем поискать более свежие исследования по вашему конкретному направлению.

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍183🔥1
🏷 Ресурсы, которые дадут очень прочную основу для начала работы с машинным обучением.

Набор тем, ранжированных по темам.

Градиентный спуск

Метрики — классификация

Матрицы неточностей, точность, прецезионность, recall, чувствительность
F1-оценка
TPR, TNR, FPR, FNR
Ошибки I и II типов
Кривые AUC-Roc

Метрики — регрессия

Общая сумма квадратов, объясненная сумма квадратов, остаточная сумма квадратов
Коэффициент детерминации и его скорректированная форма
AIC и BIC
Преимущества и недостатки RMSE, MSE, MAE, MAPE

Компромисс отклонение-дисперсия, Over/Under-Fitting

Метод k-ближайших соседей
Random Forests
Асимптотические свойства
Проклятие размерности

Выбор модели

k-Fold кросс-Валидация (перекрестная проверка)
L1 и L2 регуляризация
Байесовская оптимизация

Sampling

Классовый дисбаланс при обучении классифицирующих моделей
SMOTE
Несбалансированность классов в независимых переменных
Систематическая ошибка выборки

Модели регрессии

Глубокие нейронные сети для проблем регрессии
Случайная лесная регрессия
Регрессия XGBoost
ARIMA / SARIMA
Байесовская линейная регрессия
Регрессия на основе гауссовского процесса

Алгоритмы кластеризации


Метод К-средних
Иерархическая кластеризация
Процессы Дирихле

Классификационные модели

Логистическая регрессия
Множественная регрессия
XGBoost
Метод опорных векторов

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥34👍73
✒️ Новая версия Scikit-Learn (1.2.0–1). Обзор функций для анализа данных.

Примерно в декабре прошлого года Scikit-Learn выпустила крупное стабильное обновление (версия 1.2.0–1). Теперь Scikit-Learn хорошо совместим с Pandas, некоторые новые функции могут помочь нам с моделями регрессии, а также с задачами классификации.

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

Читать

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍181🔥1
🗣 Оценка качества работы систем Speech to Text

Вопрос оценки качества работы систем распознавания речи возникает как перед разработчиками собственных решений, так и перед конечными пользователями. Насколько качественна система распознавания речи? Насколько она эффективная на разных типах данных?

Читать

@data_analysis_ml
👍71🔥1
💨 Методы предварительной обработки данных для Data Science

• Data cleansing and editing (очистка и преобразование данных): На этом этапе данные с недопустимыми значениями, выбросами или другими проблемами удаляются или корректируются. На этом этапе либо заполняются отсутствующие данные (NaN), либо удаляются объекты данных (или признаки данных), содержащие такие отсутствующие значения, если их доля велика.

• Feature transformation (преобразование/трансформация признаков): На этом этапе изменяются значения признаков (изменяется распределение, например, признаки масштабируются), их тип (непрерывные значения преобразуются в категориальные путем агрегирования и бинаризации), модальность (изображения преобразуются в табличные данные) и т. д. Этот этап в основном включает преобразования, направленные на улучшение качества признаков (и данных) или трансформацию признаков таким образом, чтобы они были применимы для машинного обучения.

• Feature selection (отбор признаков): На этом этапе мы стараемся сократить количество признаков (желательно с минимальной потерей информации) за счет поиска подпространства более низкого измерения с использованием методов сокращения размерности или просто путем удаления некоторых нерелевантных или дублирующих (сильнокоррелирующих) признаков. Этот этап направлен на упрощение моделей, снижение сложности обучения модели и избегание неприятных эффектов, типа проклятия размерности.

• Feature generation and construction (создание/генерация признаков):
Данный этап включает в себя создание новых признаков на основе логики и знаний предметной области или математических преобразований, например, возведение в полиномиальную степень, перемножение значений признаков или другие виды смешения признаков. Этот этап направлен на выявление нелинейных сложных зависимостей в данных, преобразование их в явных вид (в виде нового признака) и создание более простых в использовании признаков для моделей машинного обучения.

• Data generation and augmentation (генерация данных): На этом этапе мы увеличиваем объем данных за счет копирования существующих точек (например, увеличения количества точек минорного класса), добавления слегка преобразованных имеющихся точек данных, создания новых синтетических данных из существующих или даже генерация данных из физических моделей.

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

Подготовка датасета для машинного обучения: 10 базовых способов совершенствования данных

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥32❤‍🔥1🤔1🌚1
10 малоизвестных библиотек Python, которые стоит использовать дата-саентистам в 2023 году

PyGWalker: PyGWalker упрощает рабочий процесс анализа и визуализации данных в Jupyter Notebook, превращая фрейм данных pandas (или фрейм данных polars) в пользовательский интерфейс в стиле Tableau для визуального исследования.

SciencePlots: Создаёт профессиональные графики matplotlib для презентаций, исследовательских работ и т.д.

CleverCSV: Устраняет ошибки синтаксического анализа при чтении CSV-файлов с помощью Pandas.

Fastparquet: Ускоряет ввод-вывод pandas в 5 раз.

Bottleneck: ускоряет работу методов NumPy в 25 раз. Особенно, если массив имеет значения NaN.

Multipledispatch: предоставляет методы для перегрузку функций в Python.

Aquarel: дополнительные стили графиков matplotlib.

Modelstore: библиотека моделей машинного обучения для лучшего отслеживания работы моделей.

Pigeon: помогает анотировать данные щелчками мышки в Jupyter notebook.

Nbcommands: помогает легко выполнять поиск кода в Jupyter notebooks, а не выполнять это вручную.

Подробнее с примерами кода

@data_analysis_ml
👍12🔥9🥰21
8️⃣ Приемов очистки данных в SQL

1. Выявление и удаление дублирующих записей

SELECT DISTINCT column1, column2, ...
FROM table_name;

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

SELECT column_name, COUNT(*)
FROM table_name
GROUP BY column_name
HAVING COUNT(*) > 1;


2. Стандартизация текстовых полей

UPDATE table_name
SET column_name = UPPER(column_name);


Вы также можете использовать функцию REPLACE для замены определенных символов или строк в текстовых полях. Например:

UPDATE table_name
SET column_name = REPLACE(column_name, 'OldString', 'NewString');


3. Обработка отсутствующих или нулевых значений

SELECT column1, column2, ...
FROM table_name
WHERE column_name IS NULL;


Затем вы можете удалить эти записи или заменить отсутствующие значения значением по умолчанию. Например:

UPDATE table_name
SET column_name = 'DefaultValue'
WHERE column_name IS NULL;


4. Удаление кривых символов

UPDATE table_name
SET column_name = REPLACE(column_name, 'InvalidChar', '');

UPDATE table_name
SET column_name = REGEXP_REPLACE(column_name, '[^a-zA-Z0–9 ]', '');


5. Обработка выбросов

Чтобы определить и удалить выбросов, мы можем использовать функции AVG и STDDEV для расчета среднего и стандартного отклонения столбца.

SELECT AVG(column_name), STDDEV(column_name)
FROM table_name;


6. Корректировка форматов дат

Функция STR_TO_DATE может преобразовать строку в формат даты. Синтаксис функции следующий:

SELECT STR_TO_DATE(date_string, format_string)
FROM table_name;


7. Очистка текстовых данных


Функция REPLACE может заменить подстроку в строке. Функция TRIM позволяет удалить из строки ведущие и последующие пробелы. Синтаксис выглядит следующим образом:

SELECT UPPER(column_name)
FROM table_name;


SELECT REPLACE(column_name, 'old_string', 'new_string')
FROM table_name;
SELECT TRIM(column_name)
FROM table_name;


8. Проверка типов данных

Важно убедиться, что ваши данные имеют правильный тип данных. Для проверки и преобразования типов данных можно использовать функции CAST или CONVERT. Например:

SELECT CAST(column_name AS INT)
FROM table_name;

SELECT CONVERT(column_name, DATE)
FROM table_name;


@data_analysis_ml
👍2113🔥5
🖥 Docker: размещение и запуск Python сценария на русском

Процесс размещения скрипта Python в контейнере Docker:

Создание Dockerfile
Создание образа из Dockerfile
Запуск образа Docker

#doc #python #docker

Читать

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥31