آموزش پایتون
دیتاستی که میتونید ازش استفاده کنید. روز 18_
بر اساس فایل sales_raw.csv، جواب چالش به این شکل میشود:
🐍 Day 18 — Data Cleaning & Data Preparation Result
📂 Dataset Analysis
ابتدا فایل sales_raw.csv با استفاده از Pandas خوانده شد.
import pandas as pd
df = pd.read_csv("sales_raw.csv")
Dataset Size:
Original rows: 15,150
Columns: 9
🔍 Data Quality Check
1. Missing Values
بررسی مقادیر خالی:
Region: 2510
Price: 23
2. Duplicate Rows
تعداد ردیفهای تکراری:
Duplicate rows: 150
3. Data Type Check
قبل از پاکسازی:
Date object
Price float64
Quantity int64
Revenue int64
ستون Date نیاز به تبدیل به فرمت استاندارد تاریخ داشت.
🧹 Data Cleaning Process
حذف دادههای تکراری:
df = df.drop_duplicates()
نتیجه:
Removed duplicates: 150 rows
تبدیل تاریخ:
df["Date"] = pd.to_datetime(
df["Date"],
errors="coerce"
)
تاریخهای نامعتبر:
Invalid dates: 10
حذف رکوردهای ناقص:
رکوردهایی که اطلاعات ضروری مثل:
Price
Region
Date
را نداشتند حذف شدند.
ساخت ستون Revenue:
df["Revenue"] = df["Quantity"] * df["Price"]
✅ Final Result
قبل از پاکسازی:
Rows: 15,150
بعد از پاکسازی:
Clean rows: 12,482
Missing values:
0
Duplicate rows:
0
💡 Key Learning
داده خام همیشه قابل استفاده برای Machine Learning نیست.
قبل از ساخت هر مدل AI باید:
Collect → Clean → Prepare → Train
را انجام دهیم.
یک مدل قوی با داده ضعیف نمیتواند نتیجه خوبی بدهد.
#Pandas #DataCleaning #DataScience #MachineLearning
https://eitaa.com/learnpythonicy
# Day18_Data_Cleaning.py
# Data Cleaning & Data Preparation with Pandas
import pandas as pd
# ==============================
# 1. Load Dataset
# ==============================
df = pd.read_csv("sales_raw.csv")
print("========== Original Dataset ==========")
print(f"Rows: {df.shape[0]}")
print(f"Columns: {df.shape[1]}")
print("\nFirst 5 rows:")
print(df.head())
# ==============================
# 2. Check Missing Values
# ==============================
print("\n========== Missing Values ==========")
missing = df.isnull().sum()
print(missing[missing > 0])
# ==============================
# 3. Check Duplicate Rows
# ==============================
print("\n========== Duplicate Rows ==========")
duplicates = df.duplicated().sum()
print("Duplicate rows:", duplicates)
# ==============================
# 4. Check Data Types
# ==============================
print("\n========== Data Types ==========")
print(df.dtypes)
# ==============================
# 5. Data Cleaning
# ==============================
print("\n========== Cleaning Process ==========")
# Remove duplicate rows
df = df.drop_duplicates()
print("Duplicates removed")
# Convert Date column
df["Date"] = pd.to_datetime(
df["Date"],
errors="coerce"
)
print("Date converted")
# Remove invalid dates
df = df.dropna(subset=["Date"])
print("Invalid dates removed")
# Handle missing Price
df["Price"] = df["Price"].fillna(
df["Price"].mean()
)
print("Missing Price values filled")
# Handle missing Region
df["Region"] = df["Region"].fillna("Unknown")
print("Missing Region values filled")
# ==============================
# 6. Create Revenue Column
# ==============================
df["Revenue"] = df["Quantity"] * df["Price"]
print("Revenue column created")
# ==============================
# 7. Save Clean Dataset
# ==============================
df.to_csv(
"sales_cleaned.csv",
index=False
)
# ==============================
# 8. Final Report
# ==============================
print("\n========== Final Dataset ==========")
print(f"Clean rows: {df.shape[0]}")
print(f"Clean columns: {df.shape[1]}")
print("\nRemaining Missing Values:")
print(df.isnull().sum())
print("\nFile saved successfully:")
print("sales_cleaned.csv")
پاسخ روز 18ام👆
@learnpythonicy
🔥 چالش ۳۰ روزه Python for AI
#Day19
🎯 موضوع: Exploratory Data Analysis (EDA)
📝 صورت مسئله:
از دیتاست زیر استفاده کنید(درواقع خروجی چالش روز18 هست.) :
sales_cleaned.csv
این دیتاست شامل اطلاعات فروش است:
Order_ID
Date
Customer
Product
Category
Region
Quantity
Price
Revenue
برنامه باید:
✅ بهترین محصول را بر اساس میزان فروش پیدا کند.
✅ پرفروشترین منطقه را مشخص کند.
✅ بیشترین درآمد ماهانه را پیدا کند.
✅ Average Order Value را محاسبه کند.
✅ روند رشد فروش را در طول زمان بررسی کند.
🎯 Bonus Challenge
با استفاده از کتابخانه Plotly نمودارهای زیر را ایجاد کنید:
📈 Sales Trend
روند فروش ماهانه را نمایش دهد.
📊 Category Comparison
مقایسه درآمد دستههای مختلف محصولات.
🌍 Region Performance
مقایسه عملکرد مناطق مختلف.
📋 هدف امروز:
یادگیری تحلیل داده و استخراج Insight از دادههای واقعی؛ اولین قدم برای تبدیل داده خام به تصمیمهای هوشمند.
https://eitaa.com/joinchat/956171922Cb501d5a32f
https://eitaa.com/learnpythonicy
https://t.me/learnpythonicy
آموزش پایتون
🔥 چالش ۳۰ روزه Python for AI #Day19 🎯 موضوع: Exploratory Data Analysis (EDA) 📝 صورت مسئله: از دی
✅ پاسخ چالش روز نوزدهم آماده شد!
در این تمرین با استفاده از Pandas، دیتاست فروش را تحلیل کردیم و موارد زیر را به دست آوردیم:
🔹 پرفروشترین محصول
🔹 بهترین منطقه از نظر فروش
🔹 ماه با بیشترین درآمد
🔹 میانگین ارزش سفارشها
🔹 نرخ رشد فروش ماهانه
در بخش Bonus نیز نمودارهای روند فروش، مقایسه دستهبندی محصولات و عملکرد مناطق با Plotly رسم شدهاند. 📊
📎 فایل کامل پاسخ و کد اجرایی در ادامه ارسال شده است.
@learnpythonicy
#DataAnalysis #Pandas #EDA
🔥 چالش ۳۰ روزه Python for AI
#Day20
🎯 موضوع: ساخت داشبورد فروش با Streamlit
📝 صورت مسئله:
در چالش امروز باید نتایج تحلیل دادههای فروش را به یک داشبورد تعاملی تبدیل کنید.
از فایل زیر استفاده کنید: sales_cleaned.csv
این فایل خروجی چالش روز هجدهم است و شامل اطلاعات سفارشها، محصولات، مشتریان، مناطق و درآمد فروش است.
برنامه شما باید با استفاده از Streamlit یک داشبورد فروش بسازد.
📌 بخش اول: KPI Cards
در بالای داشبورد شاخصهای زیر را نمایش دهید:
✅ Total Revenue
مجموع درآمد فروش
✅ Total Orders
تعداد کل سفارشها
✅ Total Customers
تعداد مشتریان منحصربهفرد
✅ Sales Growth
درصد رشد فروش نسبت به ماه قبل
📌 بخش دوم: نمودارها
داشبورد باید نمودارهای زیر را داشته باشد:
📈 Monthly Revenue
نمایش روند درآمد ماهانه
📊 Top Products
نمایش محصولات برتر بر اساس درآمد یا تعداد فروش
🌍 Region Performance
مقایسه درآمد مناطق مختلف
🗂 Category Comparison
مقایسه دستهبندی محصولات
📌 بخش سوم: فیلترهای تعاملی
کاربر بتواند اطلاعات داشبورد را بر اساس موارد زیر فیلتر کند:
✅ بازه زمانی
✅ منطقه
✅ دستهبندی محصول
با تغییر فیلترها، شاخصها و نمودارها نیز باید بهروزرسانی شوند.
🎯 Bonus Challenge
موارد زیر را نیز به داشبورد اضافه کنید:
⭐️ نمایش پرفروشترین محصول
⭐️ نمایش بهترین منطقه
⭐️ نمایش Average Order Value
⭐️ امکان دانلود دادههای فیلترشده بهصورت CSV
⭐️ طراحی حرفهای داشبورد با ستونبندی و رنگبندی مناسب
📁 نام پیشنهادی فایل:
Day20_Sales_Dashboard.py
▶️ اجرای برنامه:
streamlit run Day20_Sales_Dashboard.py
📋 هدف امروز:
تبدیل تحلیل داده به یک برنامه تعاملی و قابل استفاده؛ مهارتی که در پروژههای واقعی Data Science و ساخت Portfolio بسیار مهم است.
🔥 عضویت در چالش:
@learnpythonicy
#Python #Streamlit #DataScience #Dashboard #Pandas #Plotly #PythonForAI #Day20
Day20_Sales_Dashboard.py
حجم:
7.7K
✅ پاسخ چالش روز 20ام
در این پروژه با استفاده از Streamlit یک داشبورد تعاملی فروش ساختیم که شامل موارد زیر است:
نمایش KPIهای فروش
نمودار درآمد ماهانه
محصولات برتر
مقایسه عملکرد مناطق
فیلتر تاریخ، منطقه و دستهبندی
امکان دانلود دادههای فیلترشده
https://t.me/learnpythonicy
#Python #Streamlit #Dashboard #DataScience
🔥 چالش ۳۰ روزه Python for AI
#Day21
🎯 موضوع: Project Showcase
📝 صورت مسئله:
در روزهای ۱۸ تا ۲۰ یک پروژه کامل با عنوان زیر ساختید:
Sales Intelligence Dashboard
امروز باید این پروژه را برای GitHub و LinkedIn آماده کنید تا بهعنوان یک نمونهکار واقعی در Portfolio شما قرار بگیرد.
📌 کارهای امروز:
✅ فایلهای پروژه را مرتب کنید.
ساختار پیشنهادی:
sales-intelligence-dashboard/ ├── Day20_Sales_Dashboard.py ├── sales_cleaned.csv ├── requirements.txt ├── README.md └── screenshots/✅ یک فایل README حرفهای بنویسید. README باید شامل این بخشها باشد: 🔹 معرفی پروژه 🔹 هدف پروژه 🔹 قابلیتهای داشبورد 🔹 ابزارها و کتابخانههای استفادهشده 🔹 روش نصب و اجرا 🔹 تصاویر داشبورد 🔹 نتایج و Insightهای بهدستآمده ✅ فایل requirements.txt بسازید. محتوای پیشنهادی: pandas streamlit plotly ✅ حداقل ۲ اسکرینشات از داشبورد بگیرید. پیشنهاد: نمای کامل داشبورد نمودارها و فیلترهای تعاملی ✅ پروژه را در GitHub آپلود کنید. نام پیشنهادی Repository: sales-intelligence-dashboard ✅ یک ویدیوی کوتاه ۳۰ تا ۶۰ ثانیهای از اجرای داشبورد ضبط کنید. در ویدیو نمایش دهید: 🔹 داشبورد چگونه اجرا میشود 🔹 فیلترها چگونه کار میکنند 🔹 نمودارها چگونه تغییر میکنند 🔹 امکان دانلود CSV 🎯 Bonus Challenge ⭐️ یک توضیح کوتاه انگلیسی برای پروژه بنویسید. نمونه: I built an interactive Sales Intelligence Dashboard using Python, Pandas, Plotly, and Streamlit. The dashboard analyzes sales performance, customer activity, products, categories, and regions through interactive filters and visualizations. ⭐️ لینک GitHub پروژه را در LinkedIn منتشر کنید. 📋 هدف امروز: یادگیری نحوه ارائه یک پروژه واقعی؛ چون فقط نوشتن کد کافی نیست و باید بتوانید پروژه خود را حرفهای معرفی و نمایش دهید. راه ارتباطی: @learnpythonicychat @learnpythonicyBot 🔥 عضویت در چالش: https://t.me/learnpythonicy #Python #Streamlit #DataScience #ProjectShowcase
آموزش پایتون
🔥 چالش ۳۰ روزه Python for AI #Day21 🎯 موضوع: Project Showcase 📝 صورت مسئله: در روزهای ۱۸ تا ۲۰ ی
Day21_Sales_Intelligence_Dashboard_Project.zip
حجم:
6.8M
✅ پاسخ چالش روز 21
در این مرحله، پروژه Sales Intelligence Dashboard را به یک نمونهکار حرفهای و آماده انتشار تبدیل کردیم.
📦 فایل پروژه شامل:
🔹 داشبورد کامل Streamlit
🔹 دیتاست فروش
🔹 README حرفهای برای GitHub
🔹 فایل requirements
🔹 متن آماده LinkedIn
🔹 ساختار استاندارد Portfolio
@learnpythonicy
#Python #GitHub #Portfolio #Streamlit #DataScience #Day21