TGViewer
Data Science | Machinelearning [ru] Data Science | Machinelearning [ru] @devsp · 19.8K subscribers
Post #5104 2.32K
👩‍💻 Задачка по Python

Создайте 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("Использование: python
app.py <путь к файлу CSV>")
sys.exit(1)

file_path = sys.argv[1]
clean_and_aggregate(file_path)
  • 👍 6
  • ⚡ 1
More from @devsp
  1. Oct 1, 2026🤯 Люди взбунтовались против «пыточной для ИИ» На GitHub заметили открытый проект AI Tortu…
  2. Oct 1, 2026День в Заонежье начинается ещё в дороге. Мы встретим вас в аэропорту или на вокзале. Дальш…
  3. Sep 30, 2026Две ИИ-фабрики в Армении: что там отгрохали и на кого это в итоге пашет В августе в Раздан…
  4. Sep 30, 2026Из Москвы в Миннеаполис — с тремя решениями для улучшения персонализации в рекомендательны…
  5. Sep 30, 2026Про Ember-1 сейчас гудят на Hacker News. Исследователи дообучили Kimi K3 так, что рассужда…
  6. Sep 30, 2026Локальный ассистент для зумов, часть 8: модель, из-за которой я перекроил диаризацию за од…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →