Data Science | Machinelearning [ru]
Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM. Личный блог автора - @just_genych По вопросам рекламы или разработки - @g_abashkin РКН: https://vk.cc/cJPGXD
Show more📈 Analytical overview of Telegram channel Data Science | Machinelearning [ru]
Channel Data Science | Machinelearning [ru] (@devsp) in the Russian language segment is an active participant. Currently, the community unites 19 800 subscribers, ranking 6 531 in the Technologies & Applications category and 33 428 in the Russia region.
📊 Audience metrics and dynamics
Since its creation on невідомо, the project has demonstrated rapid growth, gathering an audience of 19 800 subscribers.
According to the latest data from 02 September, 2026, the channel demonstrates stable activity. Although there has been a change in the number of participants by -98 over the last 30 days and by 6 over the last 24 hours, overall reach remains high.
- Verification status: Not verified
- Engagement rate (ER): The average audience engagement rate is 7.83%. Within the first 24 hours after publication, content typically collects 4.91% reactions from the total number of subscribers.
- Post reach: On average, each post receives 1 550 views. Within the first day, a publication typically gains 972 views.
- Reactions and interaction: The audience actively supports content: the average number of reactions per post is 5.
- Thematic interests: Content is focused on key topics such as llm, nvidia, контекст, openai, архитектура.
📝 Description and content policy
The author describes the resource as a platform for expressing subjective opinions:
“Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM.
Личный блог автора - @just_genych
По вопросам рекламы или разработки - @g_abashkin
РКН: https://vk.cc/cJPGXD”
Thanks to the high frequency of updates (latest data received on 03 September, 2026), the channel maintains relevance and a high level of publication reach. Analytics show that the audience actively interacts with content, making it an important point of influence in the Technologies & Applications category.
Стабильный признак — это признак, у которого стандартное отклонение по всем объектам меньше заданного порога threshold.Реализуйте функцию
find_stable_features(matrix, threshold), которая возвращает список индексов признаков (столбцов), удовлетворяющих этому условию.
Решение задачи🔽
import numpy as np def find_stable_features(matrix, threshold=0.1): data = np.array(matrix) stds = np.std(data, axis=0) stable_indices = [i for i, std in enumerate(stds) if std < threshold] return stable_indices # Пример входных данных X = [ [1.0, 0.5, 3.2], [1.0, 0.49, 3.1], [1.0, 0.52, 3.0], [1.0, 0.5, 3.3], ] print(find_stable_features(X, threshold=0.05)) # Ожидаемый результат: [0, 1]
argparse в Python?
argparse — это стандартный модуль Python для работы с аргументами командной строки. Он позволяет удобно разбирать, валидировать и документировать входные параметры.
➡️ Пример:
import argparse
# Создаём парсер аргументов
parser = argparse.ArgumentParser(description="Пример работы с argparse")
parser.add_argument("--name", type=str, help="Имя пользователя")
parser.add_argument("--age", type=int, help="Возраст пользователя")
# Разбираем аргументы
args = parser.parse_args()
# Используем аргументы
print(f"Привет, {args.name}! Тебе {args.age} лет.")
🗣️ В этом примере argparse разбирает аргументы --name и --age, переданные через командную строку. Это упрощает создание CLI-приложений.🖥 Подробнее тут
"user_id", "action", и "timestamp". Нужно реализовать функцию, которая определит, является ли пользователь "уникальным".
Уникальный пользователь — это тот, кто:
• совершал более 3 действий, • все действия происходили в разные дни, • не совершал одинаковые действия дважды.Верните список
user_id, соответствующих этому критерию.
Решение задачи🔽
from collections import defaultdict from datetime import datetime def find_unique_users(logs): activity = defaultdict(lambda: {"actions": set(), "days": set(), "count": 0}) for log in logs: user = log["user_id"] action = log["action"] date = datetime.fromisoformat(log["timestamp"]).date() activity[user]["actions"].add(action) activity[user]["days"].add(date) activity[user]["count"] += 1 result = [] for user, data in activity.items(): if ( data["count"] > 3 and len(data["days"]) == data["count"] and len(data["actions"]) == data["count"] ): result.append(user) return result # Пример использования logs = [ {"user_id": 1, "action": "login", "timestamp": "2023-05-01T10:00:00"}, {"user_id": 1, "action": "view", "timestamp": "2023-05-02T11:00:00"}, {"user_id": 1, "action": "click", "timestamp": "2023-05-03T12:00:00"}, {"user_id": 1, "action": "logout", "timestamp": "2023-05-04T13:00:00"}, {"user_id": 2, "action": "login", "timestamp": "2023-05-01T10:00:00"}, {"user_id": 2, "action": "login", "timestamp": "2023-05-01T11:00:00"}, {"user_id": 2, "action": "click", "timestamp": "2023-05-01T12:00:00"}, ] print(find_unique_users(logs)) # Ожидаемый результат: [1]
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)
