Стандартная библиотека Python – это кладезь возможностей. Мы представляем семь недооцененных модулей, которые помогут вам улучшить организацию данных, оптимизировать производительность и упростить распространение ваших программ.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Data Scientist (Ranking&Search)
Senior Data Analyst
Senior Data Scientist MLE
Python developer (Middle\Senior)
Python-разработчик (middle+,senior)
Please open Telegram to view this post
VIEW IN TELEGRAM
В середине августа мы видели анонс бета-версий Grok-2 и Grok-2 mini от стартапа Илона Маска xAI. Что ж, на дворе осень, как пел Anacondaz "на улице дубак, на сердце тлен и мрак", так пусть же Grok 2 сегодня станет тем самым, кто укроет зацензуренным пледом наши тела. Предлагаю начинать.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Кросс-валидация — это техника оценки модели, которая помогает избежать переобучения и лучше оценить её обобщающую способность. В классической k-блочной кросс-валидации данные разбиваются на k равных частей, и модель обучается k раз, каждый раз используя одну часть для тестирования и остальные для обучения.
from sklearn.model_selection import cross_val_score
from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris
data = load_iris()
X, y = data.data, data.target
clf = RandomForestClassifier()
scores = cross_val_score(clf, X, y, cv=5)
print(f'Средняя точность: {scores.mean()}')
Здесь модель обучается 5 раз (5-fold) на разных частях данных, и вычисляется средняя точность.
🗣️ Кросс-валидация помогает лучше понять, как модель будет работать на новых данных, улучшая её обобщение.
Please open Telegram to view this post
VIEW IN TELEGRAM
Data Science Lead
Data Science Lead
Data Science Tech Lead
Tech Lead Python
Tech Lead (Python)
Please open Telegram to view this post
VIEW IN TELEGRAM
Статья объясняет, почему оценка LLM важна для бизнеса: модели ИИ не всегда достигают цели и нуждаются в доработке. Разбираются ключевые метрики, инструменты и лучшие практики для повышения надежности и точности.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
В мире, где всё меняется быстрее, чем ты успеваешь обновлять резюме, держаться за одну карьерную траекторию — всё равно что пытаться угнаться за горизонтом. Умение перестраиваться, пробовать новое и брать на себя задачи, которые немного пугают, — вот что реально важно. И это не про «выйди из зоны комфорта», а про осознанный выбор расти и не цепляться за привычное.
Please open Telegram to view this post
VIEW IN TELEGRAM
Data Engineer (Дата инженер)
Data Engineer AI (удаленно)
Senior backend developer - Python
QA manual/Продакт Разработчик операций AI
Please open Telegram to view this post
VIEW IN TELEGRAM
Библиотека asyncio предоставляет полный набор инструментов для организации параллельного выполнения кода в Python с использованием концепции асинхронности. Но как на самом деле работает asyncio? Давайте разберемся в ключевых принципах и понятиях.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Создайте Python-скрипт для обработки данных. Задача состоит в том, чтобы построить ETL-процесс, который очищает и агрегирует данные из CSV-файлов о продажах, а затем сохраняет агрегированные данные в новом файле.
Очистка данных: удаление записей с пустыми значениями в столбцах price или quantity.
Агрегация: подсчет общего количества проданных товаров и общей суммы по каждому продукту.
•
python app.py sales_data.csv — создает новый файл aggregated_data.csv с общей суммой и количеством проданных товаров по каждому продукту.Решение задачи
import pandas as pd
import sys
def clean_and_aggregate(file_path):
# Загружаем данные
data = pd.read_csv(file_path)
# Удаляем строки с пустыми значениями в колонках 'price' и 'quantity'
data.dropna(subset=['price', 'quantity'], inplace=True)
# Преобразуем колонки в числовой формат, ошибки игнорируем
data['price'] = pd.to_numeric(data['price'], errors='coerce')
data['quantity'] = pd.to_numeric(data['quantity'], errors='coerce')
# Удаляем строки с некорректными значениями
data.dropna(subset=['price', 'quantity'], inplace=True)
# Агрегируем данные
aggregated_data = data.groupby('product_id').agg(
total_quantity=('quantity', 'sum'),
total_sales=('price', 'sum')
).reset_index()
# Сохраняем в новый CSV
aggregated_data.to_csv('aggregated_data.csv', index=False)
print("Агрегация завершена. Данные сохранены в 'aggregated_data.csv'.")
if __name__ == "__main__":
if len(sys.argv) != 2:
print("Использование: pythonapp.py <путь к файлу CSV>")
sys.exit(1)
file_path = sys.argv[1]
clean_and_aggregate(file_path)
Please open Telegram to view this post
VIEW IN TELEGRAM
• Эксперимент: даём ChatGPT полный доступ к компьютеру
• Правильный путь создания python-библиотеки: от создания до публикации
• Запускаем Yolo на пятирублёвой монете или Luckfox Pico Mini
• Более мощное семейство моделей YandexGPT 4: рост качества ответов, длинный контекст, пошаговые рассуждения
• Как мы обучили Mistral 7B русскому языку и адаптировали для объявлений Авито
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
В этой статье мы расскажем о нашем опыте работы с ComfyUI и разработке Visionatrix — надстройки, которая упрощает генерацию медиа. Мы обсудим ключевые проблемы, с которыми сталкиваются пользователи, наш подход к их решению, а также вкратце поделимся тем, как мы использовали ChatGPT и Claude для ускорения разработки в условиях ограниченного времени.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Создайте Python-скрипт, который анализирует временной ряд, выявляя тренд и сезонные колебания. Используйте для этого библиотеку
statsmodels и визуализируйте результат с помощью matplotlib. Скрипт должен принимать данные в формате CSV и выводить график, на котором будут отображены исходные данные, тренд и сезонные компоненты.•
python app.py analyze timeseries.csv — анализирует временной ряд из файла timeseries.csv, разлагает его на тренд и сезонные компоненты и строит график с визуализацией.Решение задачи
import sys
import pandas as pd
import matplotlib.pyplot as plt
from statsmodels.tsa.seasonal import seasonal_decompose
def analyze_timeseries(file_path):
# Чтение данных из CSV
data = pd.read_csv(file_path, parse_dates=['Date'], index_col='Date')
# Проверка, что в данных есть столбец 'Value' для анализа
if 'Value' not in data.columns:
print("Файл должен содержать столбец 'Value' с числовыми значениями.")
sys.exit(1)
# Декомпозиция временного ряда
decomposition = seasonal_decompose(data['Value'], model='additive', period=12)
# Визуализация исходного ряда, тренда, сезонной и остаточной составляющих
plt.figure(figsize=(10, 8))
plt.subplot(411)
plt.plot(data['Value'], label='Исходные данные')
plt.legend(loc='best')
plt.subplot(412)
plt.plot(decomposition.trend, label='Тренд')
plt.legend(loc='best')
plt.subplot(413)
plt.plot(decomposition.seasonal, label='Сезонность')
plt.legend(loc='best')
plt.subplot(414)
plt.plot(decomposition.resid, label='Остатки')
plt.legend(loc='best')
plt.tight_layout()
plt.show ()
if __name__ == "__main__":
if len(sys.argv) < 2:
print("Укажите путь к файлу CSV для анализа.")
sys.exit(1)
file_path = sys.argv[1]
analyze_timeseries(file_path)
Please open Telegram to view this post
VIEW IN TELEGRAM
Стажер Python Back-end (офис)
Junior Data Engineer
Junior Python developer
Python-разработчик (Junior - Middle)
Junior Data Analyst / Data Analyst
Please open Telegram to view this post
VIEW IN TELEGRAM
Статья описывает создание и адаптацию бенчмарка для оценки русскоязычных LLM в российском контексте. Основное внимание уделено подбору вопросов, актуализации содержания и корректировке оценок для соответствия современным общественным реалиям.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
feature_importances_ — это атрибут некоторых моделей машинного обучения в библиотеке scikit-learn, который позволяет определить, какие признаки (фичи) наиболее влияют на предсказания модели.Этот метод возвращает значение важности для каждого признака, показывая, как сильно он влияет на конечный результат. Его использование особенно полезно для деревьев решений и ансамблевых моделей, таких как
RandomForest и GradientBoosting.RandomForest для анализа важности признаков и визуализации результатов.from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris
import pandas as pd
# Загрузка данных
data = load_iris()
X, y = data.data, data.target
# Создание и обучение модели
model = RandomForestClassifier()
model.fit(X, y)
# Получение и визуализация важности признаков
feature_importances = pd.Series(model.feature_importances_, index=data.feature_names)
feature_importances.sort_values(ascending=False).plot(kind='bar')
🗣 Использование feature_importances_ помогает определить, какие признаки стоит использовать, исключить малозначимые фичи и сделать модель более интерпретируемой.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Разработчик Python (Middle)
Middle Python Developer
Middle Python разработчик
Data Engineer/Дата инженер (ученик)
Data Engineer / Дата-инженер
Please open Telegram to view this post
VIEW IN TELEGRAM
Статья анализирует результаты AI Product Hack, рассматривая спорное судейство и кейс компании Raft по мониторингу токсичного контента в AI-продуктах. Исследуются риски и последствия неконтролируемого поведения LLM в реальных проектах.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Создайте Python-скрипт, который читает большой CSV-файл построчно, фильтрует строки по заданному критерию и подсчитывает агрегированные данные на основе указанного столбца. Скрипт должен эффективно обрабатывать файл, используя потоковое чтение (без загрузки файла целиком в память) и выводить итоговую статистику в консоль.
•
python process_data.py data.csv age 30 — фильтрует строки, где значение в столбце age больше 30, и подсчитывает общее количество таких записей и среднее значение в другом числовом столбце, например, salary.Решение задачи
import csv
import sys
def process_large_csv(file_path, filter_column, threshold, aggregate_column):
count = 0
total_sum = 0.0
with open(file_path, 'r', encoding='utf-8') as file:
reader = csv.DictReader(file)
for row in reader:
# Преобразование значений для фильтрации и агрегации
try:
filter_value = float(row[filter_column])
aggregate_value = float(row[aggregate_column])
except ValueError:
continue # Пропускаем строки с некорректными данными
# Фильтрация строк по заданному условию
if filter_value > threshold:
count += 1
total_sum += aggregate_value
# Вывод итоговой статистики
if count > 0:
average = total_sum / count
print(f"Обработано записей: {count}")
print(f"Среднее значение {aggregate_column} для записей, где {filter_column} > {threshold}: {average:.2f}")
else:
print("Записи, соответствующие условиям фильтрации, не найдены.")
if __name__ == "__main__":
if len(sys.argv) < 5:
print("Использование: python process_data.py <file_path> <filter_column> <threshold> <aggregate_column>")
sys.exit(1)
file_path = sys.argv[1]
filter_column = sys.argv[2]
threshold = float(sys.argv[3])
aggregate_column = sys.argv[4]
process_large_csv(file_path, filter_column, threshold, aggregate_column)
Please open Telegram to view this post
VIEW IN TELEGRAM
• Всё, что вы хотели знать о Django Channels
• Сборка Python проекта с uv и Docker
• DE-1. DIY ассистент на LLM
• Ваши генераторные выражения сломаны: чиним и разбираемся
• Всё, что вы хотели знать о Django Channels
Please open Telegram to view this post
VIEW IN TELEGRAM