eitaa logo
آموزش پایتون
63 دنبال‌کننده
244 عکس
106 ویدیو
52 فایل
ارتباط: https://eitaa.com/joinchat/956171922Cb501d5a32f لینک همین کانال: @LearnPythonIcy لینک کانال تلگرام: https://t.me/learnpythonicy
مشاهده در ایتا
دانلود
آموزش پایتون
🚀 چالش این هفته: با استفاده از آموخته‌های Day 1 تا Day 17، نسخه خودتان از این پروژه را بسازید. لازم
خیلی‌ها فکر کردند این Dashboard فقط با چند خط کد ساخته شده... اما پشت این پروژه: 17 روز تمرین، صدها خط کد، و ترکیب چندین مفهوم Python وجود دارد. حالا مرحله بعد شروع می‌شود: هر هفته یک پروژه واقعی می‌سازیم! پروژه بعدی: 🚀 Sales Data Analyzer
🐍 — Data Cleaning & Data Preparation داده‌های واقعی همیشه تمیز و آماده تحلیل نیستند! امروز قرار است نقش یک Data Analyst را بازی کنیم و یک دیتاست خام را آماده کنیم. 🎯 Challenge: Clean a Real-World Sales Dataset در این تمرین ابتدا باید یک فایل به نام: 📂 sales_raw.csv بسازید که شامل اطلاعات فروش باشد: Order_ID Date Customer Product Category Region Quantity Price (حدود 15,000 رکورد) اما این داده‌ها باید شامل مشکلات واقعی باشند: ❌ مقادیر خالی (Missing Values) ❌ ردیف‌های تکراری (Duplicate Rows) ❌ تاریخ‌های با فرمت اشتباه ❌ داده‌های نامعتبر در بعضی ستون‌ها Tasks: ✅ 1. خواندن فایل CSV با Pandas ✅ 2. بررسی کیفیت داده: تعداد Missing Values تعداد Duplicate Rows نوع داده هر ستون ✅ 3. پاکسازی داده: 🧹 حذف رکوردهای خراب 📅 تبدیل ستون Date به فرمت صحیح 💰 ساخت ستون جدید: Revenue = Quantity × Price ✅ 4. ذخیره دیتاست نهایی: sales_cleaned.csv Expected Output: Before Cleaning: Original rows: 15,000 https://eitaa.com/learnpythonicy
sales_raw.csv
حجم: 894.6K
دیتاستی که میتونید ازش استفاده کنید. روز 18_
آموزش پایتون
دیتاستی که میتونید ازش استفاده کنید. روز 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 را انجام دهیم. یک مدل قوی با داده ضعیف نمی‌تواند نتیجه خوبی بدهد. 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 🎯 موضوع: 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
🌸
🔥 چالش ۳۰ روزه Python for AI 🎯 موضوع: ساخت داشبورد فروش با 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