Data Science | Machinelearning [ru]
Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM. Личный блог автора - @just_genych По вопросам рекламы или разработки - @g_abashkin РКН: https://vk.cc/cJPGXD
显示更多📈 Telegram 频道 Data Science | Machinelearning [ru] 的分析概览
频道 Data Science | Machinelearning [ru] (@devsp) 俄语 语言赛道中的 是活跃参与者。目前社区聚集了 20 056 名订阅者,在 技术与应用 类别中位列第 6 729,并在 俄罗斯 地区排名第 33 727 位。
📊 受众指标与增长动态
自 невідомо 创建以来,项目保持高速增长,吸引了 20 056 名订阅者。
根据 13 六月, 2026 的最新数据,频道保持稳定运转。过去 30 天订阅人数变化为 -68,过去 24 小时变化为 -19,整体触达仍然可观。
- 认证状态: 未认证
- 互动率 (ER): 平均受众互动率为 7.54%。内容发布后 24 小时内通常能获得 4.58% 的反应,占订阅者总量。
- 帖子覆盖: 每篇帖子平均可获得 1 513 次浏览,首日通常累积 919 次浏览。
- 互动与反馈: 受众积极参与,单帖平均反应数为 7。
- 主题关注点: 内容集中在 llm, nvidia, контекст, openai, архитектура 等核心主题上。
📝 描述与内容策略
作者将该频道定位为表达主观观点的平台:
“Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM.
Личный блог автора - @just_genych
По вопросам рекламы или разработки - @g_abashkin
РКН: https://vk.cc/cJPGXD”
凭借高频更新(最新数据采集于 14 六月, 2026),频道始终保持新鲜度与高覆盖。分析显示受众积极互动,使其成为 技术与应用 类别中的关键影响点。
"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)
train_test_split() из библиотеки sklearn разбивает данные на обучающую и тестовую выборки.
Это важно, чтобы проверить, как хорошо модель работает на невидимых данных.
➡️ Пример:
from sklearn.model_selection import train_test_split
X = [[1], [2], [3], [4], [5]]
y = [0, 0, 1, 1, 1]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.4, random_state=42)
print("Обучение:", X_train)
print("Тест:", X_test)
🗣️ Почему важно: • Модель не должна учиться на тех же данных, на которых её оценивают • test_size указывает, какой процент данных пойдёт на тест • random_state нужен для воспроизводимости Это один из самых базовых, но обязательных шагов в любом ML-проекте🖥 Подробнее тут
from sklearn.feature_extraction.text import CountVectorizer
texts = ["Я люблю машинное обучение", "Обучение — это интересно"]
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(texts)
print(vectorizer.get_feature_names_out())
print(X.toarray())
# Вывод:
['интересно' 'люблю' 'машинное' 'обучение' 'это' 'я']
[[0 1 1 1 0 1]
[1 0 0 1 1 0]]
🗣️ Токенизация превращает текст в числовую матрицу, понятную модели. Это первый шаг в обработке текста перед обучением моделей на естественном языке.🖥 Подробнее тут
现已上线!2025 年 Telegram 研究 — 年度关键洞察 
