انجمن علمی علوم کامپیوتر دانشگاه خوارزمی
IMG_20231117_213916_312.jpg
سلام به دوستان علوم کامپیوتری👋🏻
ممنون که تا اینجا با ما همراه بودید و ازمون حمایت کردید.✨
ما در انجمن علوم کامپیوتر خوارزمی، رودمپی رو با محوریت Data Science آماده کردیم؛ تا به عنوان یک ابزار کاربردی برای ورود به این دنیای جذاب همراهتون باشه.🛣🗺
تا الان در جهت شرح پیچ و خمهای این مسیر و آشنایی با مفاهیم هر بخش، مطالبی رو در مورد
جبرخطی➖➗➕
آمار📊📉📈
احتمال🎲
با شما به اشتراک گذاشتیم.ویژگیهای
شی گرایی🅿️🅾🅾
رو شناختیم و از بین کتابخانهها
کتابخانهNumpy 📚💻
رو بررسی کردیم.
حالا اینبار نوبت اینه که به Pandas به عنوان ایستگاه بعدی سری بزنیم.🚏🐼
با ما در این مسیر همراه باشید😉😊
➖➖➖➖➖➖➖➖➖➖➖➖➖➖
@CS_KHU | انجمن علمی علوم کامپیوتر
ممنون که تا اینجا با ما همراه بودید و ازمون حمایت کردید.✨
ما در انجمن علوم کامپیوتر خوارزمی، رودمپی رو با محوریت Data Science آماده کردیم؛ تا به عنوان یک ابزار کاربردی برای ورود به این دنیای جذاب همراهتون باشه.🛣🗺
تا الان در جهت شرح پیچ و خمهای این مسیر و آشنایی با مفاهیم هر بخش، مطالبی رو در مورد
جبرخطی➖➗➕
آمار📊📉📈
احتمال🎲
با شما به اشتراک گذاشتیم.ویژگیهای
شی گرایی🅿️🅾🅾
رو شناختیم و از بین کتابخانهها
کتابخانهNumpy 📚💻
رو بررسی کردیم.
حالا اینبار نوبت اینه که به Pandas به عنوان ایستگاه بعدی سری بزنیم.🚏🐼
با ما در این مسیر همراه باشید😉😊
➖➖➖➖➖➖➖➖➖➖➖➖➖➖
@CS_KHU | انجمن علمی علوم کامپیوتر
This media is not supported in your browser
VIEW IN TELEGRAM
کتابخانه Pandas چیست؟
یک کتابخانه پایتون است که برای کار با مجموعه داده ها استفاده می شود و دارای عملکردهایی برای تجزیه و تحلیل، تمیز کردن، کاوش و دستکاری داده ها است.
نام Pandas هم به "پنل داده" و هم به "تحلیل داده پایتون" اشاره دارد و توسط وس مک کینی در سال 2008 ایجاد شد.
چرا از Pandas استفاده کنیم؟
پانداز به ما این امکان را می دهند که داده های بزرگ را تجزیه و تحلیل کنیم و بر اساس تئوری های آماری نتیجه گیری کنیم.
پانداز می توانند مجموعه داده های نامرتب را تمیز کنند و آنها را خوانا و مرتبط کنند.
داده های مرتبط در علم داده بسیار مهم است.
برخی منابع یادگیری:
Coursera
youtube
#Learning
➖➖➖➖➖➖➖➖➖➖➖➖➖➖
@CS_KHU | انجمن علمی علوم کامپیوتر
یک کتابخانه پایتون است که برای کار با مجموعه داده ها استفاده می شود و دارای عملکردهایی برای تجزیه و تحلیل، تمیز کردن، کاوش و دستکاری داده ها است.
نام Pandas هم به "پنل داده" و هم به "تحلیل داده پایتون" اشاره دارد و توسط وس مک کینی در سال 2008 ایجاد شد.
چرا از Pandas استفاده کنیم؟
پانداز به ما این امکان را می دهند که داده های بزرگ را تجزیه و تحلیل کنیم و بر اساس تئوری های آماری نتیجه گیری کنیم.
پانداز می توانند مجموعه داده های نامرتب را تمیز کنند و آنها را خوانا و مرتبط کنند.
داده های مرتبط در علم داده بسیار مهم است.
برخی منابع یادگیری:
Coursera
youtube
#Learning
➖➖➖➖➖➖➖➖➖➖➖➖➖➖
@CS_KHU | انجمن علمی علوم کامپیوتر
کاربرد های این کتابخانه:
1.خواندن و ذخیره سازی دادهها:
2.پاکسازی دادهها:
دستور اول تمام ردیفها یا ستونهایی را که حاوی مقادیر گمشده (NaN) هستند از df حذف میکند و نتیجه را در df_cleaned ذخیره میکند.
دستور دوم تمام مقادیر گمشده (NaN) در df را با صفر جایگزین میکند و نتیجه را در df_filled ذخیره میکند.
3.تغییر دادهها:
دستور اول نوع دادههای ستون مشخص شده در df را به نوع دادهی دستهبندی شده (category) تبدیل میکند. این کار بهینهسازی حافظه و سرعت پردازش را در مواردی که دادهها دارای تعداد محدودی از دستههای تکراری هستند، فراهم میکند.
دستور دوم یک تابع (در این مورد، تابع lambda که مقدار هر عنصر را دو برابر میکند) را به هر عنصر در ستون موجود از df اعمال میکند و نتایج را در یک ستون جدید به نام 'new_column' ذخیره میکند.
4.گروهبندی و تجمیع دادهها:
ابتدا یک گروهبندی بر اساس مقادیر موجود در ستون 'column_name' از df ایجاد میکند. در واقع، دادهها بر اساس مقادیر منحصر به فرد در این ستون دستهبندی میشوند.
سپس، mean(). میانگین تمام ستونهای عددی در هر یک از این گروهها را محاسبه میکند.
نتیجه، یک DataFrame جدید grouped_df است که میانگین هر ستون عددی را برای هر دسته منحصر به فرد در ستون 'column_name' نمایش میدهد. این برای تحلیل گروههای مختلف دادهها و درک روابط بین آنها مفید است.
5.ترکیب و ادغام دادهها:
دستور اول df1 و df2، را بر اساس ستون مشترک 'common_column' با هم ادغام (merge) میکند. نتیجه، یک DataFrame جدید به نام merged_df است که تمام ردیفها و ستونهایی را دارد که در هر دو DataFrame وجود دارند و بر اساس مقادیر مشترک در 'common_column' ترکیب شدهاند.
دستور دوم df1 و df2، را به صورت عمودی (پشت سر هم) با یکدیگر ترکیب (concatenate) میکند. نتیجه، یک DataFrame جدید به نام concatenated_df است که شامل تمام ردیفهای df1 و سپس تمام ردیفهای df2 میباشد. این دستور به خصوص وقتی مفید است که دو DataFrame دارای ستونهای مشابه هستند.
6.جابجایی و تغییر شکل دادهها:
دستور اول یک جدول محوری (pivot table) ایجاد میکند. در این جدول، ستونهای مشخص شده در 'column' به عنوان سرستونهای جدید قرار میگیرند، و مقادیر موجود در 'value' درون جدول قرار میگیرند. مقادیر 'row' به عنوان شاخصهای ردیفهای جدول مورد استفاده قرار میگیرند. این روش برای خلاصه کردن و بازسازی دادهها بر اساس دستهبندیهای مختلف مفید است.
دستور دوم DataFrame را "ذوب" میکند و یک ساختار طولانیتر ایجاد میکند. id_vars ستونهایی هستند که نباید تغییر کنند، در حالی که value_vars ستونهایی هستند که باید ذوب شوند. نتیجه این است که هر ردیف از df به چندین ردیف در melted_df تبدیل میشود، به طوری که هر ستون از value_vars به یک ردیف جداگانه تبدیل میشود. این روش برای تغییر ساختار دادهها از فرمت عریض به فرمت طولانی مورد استفاده قرار میگیرد
#Learning
➖➖➖➖➖➖➖➖➖➖➖➖➖➖
@CS_KHU | انجمن علمی علوم کامپیوتر
1.خواندن و ذخیره سازی دادهها:
df = pd.read_csv('data.csv')توضیح: : دستور اول فایل CSV با نام data.csv را میخواند و دادههای آن را به صورت یک DataFrame در متغیر df ذخیره میکند و دستور دوم DataFrame را به یک فایل CSV با نام output.csv تبدیل و ذخیره میکند.
df.to_csv('output.csv')
2.پاکسازی دادهها:
df_cleaned = df.dropna()توضیح: کد برای حذف ردیفهایی با مقادیر گمشده یا جایگزین کردن آنها با صفر است.
df_filled = df.fillna(0)
دستور اول تمام ردیفها یا ستونهایی را که حاوی مقادیر گمشده (NaN) هستند از df حذف میکند و نتیجه را در df_cleaned ذخیره میکند.
دستور دوم تمام مقادیر گمشده (NaN) در df را با صفر جایگزین میکند و نتیجه را در df_filled ذخیره میکند.
3.تغییر دادهها:
df['column'] = df['column'].astype('categoryتوضیح: تغییر نوع دادههای یک ستون و ایجاد ستون جدید با اعمال یک تابع.
df['new_column'] = df['existing_column'].apply(lambda x: x * 2)
دستور اول نوع دادههای ستون مشخص شده در df را به نوع دادهی دستهبندی شده (category) تبدیل میکند. این کار بهینهسازی حافظه و سرعت پردازش را در مواردی که دادهها دارای تعداد محدودی از دستههای تکراری هستند، فراهم میکند.
دستور دوم یک تابع (در این مورد، تابع lambda که مقدار هر عنصر را دو برابر میکند) را به هر عنصر در ستون موجود از df اعمال میکند و نتایج را در یک ستون جدید به نام 'new_column' ذخیره میکند.
4.گروهبندی و تجمیع دادهها:
grouped_df = df.groupby('column_name').mean()توضیح: گروهبندی دادهها بر اساس ستون خاص و محاسبه میانگین برای هر گروه.
ابتدا یک گروهبندی بر اساس مقادیر موجود در ستون 'column_name' از df ایجاد میکند. در واقع، دادهها بر اساس مقادیر منحصر به فرد در این ستون دستهبندی میشوند.
سپس، mean(). میانگین تمام ستونهای عددی در هر یک از این گروهها را محاسبه میکند.
نتیجه، یک DataFrame جدید grouped_df است که میانگین هر ستون عددی را برای هر دسته منحصر به فرد در ستون 'column_name' نمایش میدهد. این برای تحلیل گروههای مختلف دادهها و درک روابط بین آنها مفید است.
5.ترکیب و ادغام دادهها:
merged_df = pd.merge(df1, df2, on='common_column')توضیح: ادغام یا اتصال دو DataFrame مختلف بر اساس یک ستون مشترک یا سادهتر، قرار دادن آنها بالای هم.
concatenated_df = pd.concat([df1, df2])
دستور اول df1 و df2، را بر اساس ستون مشترک 'common_column' با هم ادغام (merge) میکند. نتیجه، یک DataFrame جدید به نام merged_df است که تمام ردیفها و ستونهایی را دارد که در هر دو DataFrame وجود دارند و بر اساس مقادیر مشترک در 'common_column' ترکیب شدهاند.
دستور دوم df1 و df2، را به صورت عمودی (پشت سر هم) با یکدیگر ترکیب (concatenate) میکند. نتیجه، یک DataFrame جدید به نام concatenated_df است که شامل تمام ردیفهای df1 و سپس تمام ردیفهای df2 میباشد. این دستور به خصوص وقتی مفید است که دو DataFrame دارای ستونهای مشابه هستند.
6.جابجایی و تغییر شکل دادهها:
pivot_table = df.pivot_table(index='row', columns='column', values='value')توضیح: تغییر شکل دادهها با استفاده از جدولهای دورانی یا تبدیل ساختار DataFrame.
melted_df = pd.melt(df, id_vars=['id_column'], value_vars=['value_column'])
دستور اول یک جدول محوری (pivot table) ایجاد میکند. در این جدول، ستونهای مشخص شده در 'column' به عنوان سرستونهای جدید قرار میگیرند، و مقادیر موجود در 'value' درون جدول قرار میگیرند. مقادیر 'row' به عنوان شاخصهای ردیفهای جدول مورد استفاده قرار میگیرند. این روش برای خلاصه کردن و بازسازی دادهها بر اساس دستهبندیهای مختلف مفید است.
دستور دوم DataFrame را "ذوب" میکند و یک ساختار طولانیتر ایجاد میکند. id_vars ستونهایی هستند که نباید تغییر کنند، در حالی که value_vars ستونهایی هستند که باید ذوب شوند. نتیجه این است که هر ردیف از df به چندین ردیف در melted_df تبدیل میشود، به طوری که هر ستون از value_vars به یک ردیف جداگانه تبدیل میشود. این روش برای تغییر ساختار دادهها از فرمت عریض به فرمت طولانی مورد استفاده قرار میگیرد
#Learning
➖➖➖➖➖➖➖➖➖➖➖➖➖➖
@CS_KHU | انجمن علمی علوم کامپیوتر
7.تصویرسازی دادهها:
این دستور در کتابخانه Pandas پایتون یک نمودار خطی را ایجاد میکند. با استفاده از دستور دادههای موجود در ستون 'x_column' به عنوان محور افقی (محور x) و دادههای موجود در ستون 'y_column' به عنوان محور عمودی (محور y) در نمودار استفاده میشوند. نوع نمودار به عنوان خطی (line) تعریف شده است، بنابراین دادهها به صورت خطی نمایش داده میشوند. این روش برای نمایش روند تغییرات یا رابطه بین دو متغیر مختلف مفید است.
این کدها نمونههایی از قابلیتهای متنوع Pandas در پایتون هستند که برای پردازش، تحلیل و تصویرسازی دادهها به کار میروند.
#Learning
➖➖➖➖➖➖➖➖➖➖➖➖➖➖
@CS_KHU | انجمن علمی علوم کامپیوتر
df.plot(kind='line', x='x_column', y='y_column')توضیح: ایجاد نمودار خطی ساده (این کد نیازمند matplotlib برای تصویرسازی دادهها است).
این دستور در کتابخانه Pandas پایتون یک نمودار خطی را ایجاد میکند. با استفاده از دستور دادههای موجود در ستون 'x_column' به عنوان محور افقی (محور x) و دادههای موجود در ستون 'y_column' به عنوان محور عمودی (محور y) در نمودار استفاده میشوند. نوع نمودار به عنوان خطی (line) تعریف شده است، بنابراین دادهها به صورت خطی نمایش داده میشوند. این روش برای نمایش روند تغییرات یا رابطه بین دو متغیر مختلف مفید است.
این کدها نمونههایی از قابلیتهای متنوع Pandas در پایتون هستند که برای پردازش، تحلیل و تصویرسازی دادهها به کار میروند.
#Learning
➖➖➖➖➖➖➖➖➖➖➖➖➖➖
@CS_KHU | انجمن علمی علوم کامپیوتر
کتابخانه matplotlib
در دنیای کار با دادهها، حجم فراوان دادهها کار با آنها و نمایش نتایج حاصل از بررسی آن ها را سخت میکند؛ لذا افرادی که با حجم وسیعی از دادهها کار میکنند نیازمند ابزاری برای انتقال مفاهیم به ساده ترین شکل ممکن هستند. Matplotlib و Seaborn کتابخانههای پایتون برای مصورسازی هستند. هر دوی این کتابخانهها جزو کتابخانههای بسیار پرکاربرد رسم نمودار و مصور سازی داده در پایتون هستند.
مصورسازی داده یا تجسمسازی داده ارائهی گرافیکی داده است که هدف اصلی آن انتقال بهینهی اطلاعات به کاربران از طریق نمایش روابط میان دادهها به کمک نمودارها است.
حال به رسم نمودارهای مهم توسط کتابخانه matplotlib میپردازیم.
ادامه مطلب
PART1️⃣
#Learning
➖➖➖➖➖➖➖➖➖➖➖➖➖
@CS_KHU | انجمن علمی علوم کامپیوتر
در دنیای کار با دادهها، حجم فراوان دادهها کار با آنها و نمایش نتایج حاصل از بررسی آن ها را سخت میکند؛ لذا افرادی که با حجم وسیعی از دادهها کار میکنند نیازمند ابزاری برای انتقال مفاهیم به ساده ترین شکل ممکن هستند. Matplotlib و Seaborn کتابخانههای پایتون برای مصورسازی هستند. هر دوی این کتابخانهها جزو کتابخانههای بسیار پرکاربرد رسم نمودار و مصور سازی داده در پایتون هستند.
مصورسازی داده یا تجسمسازی داده ارائهی گرافیکی داده است که هدف اصلی آن انتقال بهینهی اطلاعات به کاربران از طریق نمایش روابط میان دادهها به کمک نمودارها است.
حال به رسم نمودارهای مهم توسط کتابخانه matplotlib میپردازیم.
ادامه مطلب
PART1️⃣
#Learning
➖➖➖➖➖➖➖➖➖➖➖➖➖
@CS_KHU | انجمن علمی علوم کامپیوتر
Telegraph
کتابخانه های matplotlib و seaborn
در دنیای کار با داده ها، حجم فراوان داده ها کار توضیح داده ها و نمایش نتایج حاصل از بررسی آن ها را سخت میکند؛ لذا افرادی که با حجم وسیعی از داده ها کار میکنند نیازمند ابزاری برای انتقال مفاهیم به ساده ترین شکل ممکن هستند کتابخانه های Matplotlib و Seaborn…
کتابخانه seaborn
در ادامه کار با داده ها، یکی دیگر از کتابخانه های کاربردی و مهم، کتابخانه seaborn است. برای مصور سازی نیاز به یادگیری این کتابخانه داریم.
حال به بررسی کتابخانه seaborn میپردازیم.
ادامه مطلب
PART2⃣
#Learning
➖➖➖➖➖➖➖➖➖➖➖➖➖
@CS_KHU | انجمن علمی علوم کامپیوتر
در ادامه کار با داده ها، یکی دیگر از کتابخانه های کاربردی و مهم، کتابخانه seaborn است. برای مصور سازی نیاز به یادگیری این کتابخانه داریم.
حال به بررسی کتابخانه seaborn میپردازیم.
ادامه مطلب
PART2⃣
#Learning
➖➖➖➖➖➖➖➖➖➖➖➖➖
@CS_KHU | انجمن علمی علوم کامپیوتر
Telegraph
کتابخانه seaborn
آموزش Seaborn : ابتدا کتابخانه ها را ایمپورت میکنیم : از مجموعه دادهی Pokemon استفاده میکنیم. این مجموعه داده را که به فرمت فایل csv است با کمک pandas به شکل دستور زیر میخوانیم: df = pd.read_csv('Pokemon.csv', index_col=0) آرگومان index_col=0 به این…
◼️آشنایی با SQL
زبان برنامه نویسیای است که برای مدیریت و ارتباط با پایگاه دادههای رابطهای استفاده میشود. SQL مخفف عبارت Structured Query Language است که به معنی زبان پرسوجوی ساختاریافته است. SQL یک زبان استاندارد بینالمللی است که توسط بسیاری از سیستمهای مدیریت پایگاه داده مانند Oracle, MySQL, SQL Server و SQLite پشتیبانی میشود.
در دیتاساینس، SQL میتواند برای انجام عملیاتهایی مانند جستجو، فیلتر کردن، مرتبسازی، ترکیب و تحلیل دادهها به کار رود. با استفاده از دستورات SQL میتوانید دادههای مورد نیاز خود را از پایگاه داده استخراج کنید و آنها را به صورت مرتب شده و یا فیلتر شده نمایش دهید. در SQL نوشتن کوئری بهمعنای اجرای همین دستورات است.
در ادامه کدهایی را بررسی میکنیم که فقط بخشی از کارهایی هستند که میتوانید با SQL انجام دهید. برای یادگیری بیشتر در مورد SQL میتوانید از دوره زیر استفاده کنید.
دوره رایگان دانشگاه هاروارد
#Learning
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
زبان برنامه نویسیای است که برای مدیریت و ارتباط با پایگاه دادههای رابطهای استفاده میشود. SQL مخفف عبارت Structured Query Language است که به معنی زبان پرسوجوی ساختاریافته است. SQL یک زبان استاندارد بینالمللی است که توسط بسیاری از سیستمهای مدیریت پایگاه داده مانند Oracle, MySQL, SQL Server و SQLite پشتیبانی میشود.
در دیتاساینس، SQL میتواند برای انجام عملیاتهایی مانند جستجو، فیلتر کردن، مرتبسازی، ترکیب و تحلیل دادهها به کار رود. با استفاده از دستورات SQL میتوانید دادههای مورد نیاز خود را از پایگاه داده استخراج کنید و آنها را به صورت مرتب شده و یا فیلتر شده نمایش دهید. در SQL نوشتن کوئری بهمعنای اجرای همین دستورات است.
در ادامه کدهایی را بررسی میکنیم که فقط بخشی از کارهایی هستند که میتوانید با SQL انجام دهید. برای یادگیری بیشتر در مورد SQL میتوانید از دوره زیر استفاده کنید.
دوره رایگان دانشگاه هاروارد
#Learning
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
برای استفاده از SQL در پایتون، میتوانید از کتابخانههایی مانند
اگر یک فایل پایگاه داده مانند School.db داشته باشید با وارد کردن کد زیر در ترمینال میتوانید از آن استفاده کنید:
زبان SQL شامل بسیاری از دستورات است که برای انجام عملیاتهای مختلف بر روی دادهها مورد نیاز هستند. برخی از دستورات مهم SQL عبارتند از:
- SELECT:
برای استخراج دادهها از یک یا چند جدول استفاده میشود.
- INSERT:
برای اضافه کردن دادههای جدید به یک جدول استفاده میشود.
- UPDATE:
برای بهروزرسانی دادههای موجود در یک جدول استفاده میشود.
- DELETE:
برای حذف دادههای مشخص شده از یک جدول استفاده میشود.
- CREATE TABLE:
برای ایجاد یک جدول جدید با ستونها و نوع دادههای مشخص شده استفاده میشود.
- ALTER TABLE:
برای تغییر ساختار یک جدول موجود، مانند اضافه، حذف یا تغییر نام ستونها استفاده میشود.
- DROP TABLE:
برای حذف یک جدول کاملاً از پایگاه داده استفاده میشود.
- JOIN:
برای اتصال دادههای مربوط از دو یا چند جدول استفاده میشود.
- WHERE:
برای فیلتر کردن دادهها بر اساس شرطهای مشخص شده استفاده میشود.
- GROUP BY:
برای گروهبندی دادهها بر اساس یک یا چند ستون استفاده میشود.
- HAVING:
برای فیلتر کردن گروههای ایجاد شده توسط GROUP BY بر اساس شرطهای مشخص شده استفاده میشود.
- ORDER BY:
برای مرتبسازی دادهها بر اساس یک یا چند ستون به صورت صعودی یا نزولی استفاده میشود.
- CASE:
برای ایجاد شرطهای متعدد و اعمال عملیاتهای مختلف بر روی دادهها استفاده میشود.
#Learning
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
sqlite3
، mysql-connector-python
، psycopg2
و pyodbc
استفاده کنید. برای مثال، برای اتصال به یک پایگاه داده SQLite با استفاده از کتابخانه sqlite3
، میتوانید از کد زیر استفاده کنید:import sqlite3
# Connect to database
conn = sqlite3.connect('example.db')
# Create a cursor
c = conn.cursor()
# Execute a query
c.execute('SELECT * FROM table_name')
# Fetch the results
results = c.fetchall()
# Close the connection
conn.close()
اگر یک فایل پایگاه داده مانند School.db داشته باشید با وارد کردن کد زیر در ترمینال میتوانید از آن استفاده کنید:
sqlite3 School.db
--با استفاده از دستور schema.، میتوانید ساختار فایل دادهها و جداول آن را به صورت دقیق مشاهده کنید، از جمله نام ستونها، نوع دادهها و محدودیتهایی که برای هر ستون تعریف شدهاند.
sqlite> .schema
زبان SQL شامل بسیاری از دستورات است که برای انجام عملیاتهای مختلف بر روی دادهها مورد نیاز هستند. برخی از دستورات مهم SQL عبارتند از:
- SELECT:
برای استخراج دادهها از یک یا چند جدول استفاده میشود.
- INSERT:
برای اضافه کردن دادههای جدید به یک جدول استفاده میشود.
- UPDATE:
برای بهروزرسانی دادههای موجود در یک جدول استفاده میشود.
- DELETE:
برای حذف دادههای مشخص شده از یک جدول استفاده میشود.
- CREATE TABLE:
برای ایجاد یک جدول جدید با ستونها و نوع دادههای مشخص شده استفاده میشود.
- ALTER TABLE:
برای تغییر ساختار یک جدول موجود، مانند اضافه، حذف یا تغییر نام ستونها استفاده میشود.
- DROP TABLE:
برای حذف یک جدول کاملاً از پایگاه داده استفاده میشود.
- JOIN:
برای اتصال دادههای مربوط از دو یا چند جدول استفاده میشود.
- WHERE:
برای فیلتر کردن دادهها بر اساس شرطهای مشخص شده استفاده میشود.
- GROUP BY:
برای گروهبندی دادهها بر اساس یک یا چند ستون استفاده میشود.
- HAVING:
برای فیلتر کردن گروههای ایجاد شده توسط GROUP BY بر اساس شرطهای مشخص شده استفاده میشود.
- ORDER BY:
برای مرتبسازی دادهها بر اساس یک یا چند ستون به صورت صعودی یا نزولی استفاده میشود.
- CASE:
برای ایجاد شرطهای متعدد و اعمال عملیاتهای مختلف بر روی دادهها استفاده میشود.
#Learning
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
فرض میکنیم که یک فایل پایگاه داده به نام School وجود دارد که شامل جدول Students با ستونهای زیر است:
- stud_id: کلید اصلی جدول که شناسه هر دانشآموز را نشان میدهد
- name: نام دانشآموز
- age: سن دانشآموز
- major: رشته تحصیلی دانشآموز
-GPA: معدل دانشآموز
#Learning
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
- stud_id: کلید اصلی جدول که شناسه هر دانشآموز را نشان میدهد
- name: نام دانشآموز
- age: سن دانشآموز
- major: رشته تحصیلی دانشآموز
-GPA: معدل دانشآموز
#Learning
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
مثال۱:
مثال۲:
مثال۳:
مثال۴:
مثال۵:
#Learning
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
SELECT * FROM Students;این کد تمام ستونهای جدول را بازیابی میکند.
مثال۲:
/*اضافه کردن چند دانشآموز جدید به جدول Students...*/این کد، سه سطر جدید به جدول Students اضافه میکند و مقادیر ستونهای مشخص شده را برای آنها وارد میکند.
INSERT INTO Students (stud_id, name, age, major) VALUES
(1001, 'Ali', 19, 'Computer Science'),
(1002, 'Sara', 20, 'Mathematics'),
(1003, 'Reza', 18, 'Physics');
مثال۳:
--تغییر رشته تحصیلی دانشآموزی که شناسه آن ۱۰۰۱ است به 'Mathematics'.این کد، مقدار ستون major را برای سطری که شرط WHERE را برآورده میکند، تغییر میدهد.
UPDATE Students SET major = 'Mathematics' WHERE stud_id = 1001;
مثال۴:
--حذف دانشآموزی که شناسه آن ۱۰۰۳ است از جدول Students.این کد، سطری را که شرط WHERE را برآورده میکند، از جدول Students حذف میکند.
DELETE FROM Students WHERE stud_id = 1003;
مثال۵:
--بازیابی نام و سن دانشآموزانی که بیشتر از ۱۹ سال دارند.این کد، فقط ستونهای name و age را از جدول Students انتخاب میکند و با استفاده از شرط WHERE، فقط سطرهایی را نمایش میدهد که مقدار ستون age بیشتر از ۱۹ باشد.
SELECT name, age FROM Students WHERE age > 19;
#Learning
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
تابعهای SQL
توابع SQL شامل توابع رشتهای، عددی، تاریخی، تبدیل، و توابع پیشرفته مانند توابع تحلیلی و توابع رتبهبندی در SQL Server و سایر سیستمهای مدیریت پایگاه دادهها مانند MySQL، Oracle، PostgreSQL و غیره هستند. توابع رشتهای شامل توابعی مانند
به عنوان مثال، برای استفاده از تابع LEN در SQL ، میتوانید از دستور زیر استفاده کنید:
این دستور، طول ستون name را برای هر ردیف در جدول محاسبه میکند.
همچنین، برای استفاده از تابع CONCAT میتوانید از دستور زیر استفاده کنید:
Nested Queries
در Nested Query یا Subquery، یک کوئری داخلی درون یک کوئری بیرونی است که به منظور بازیابی دادهها از چندین جدول یا اعمال شرایط بر اساس نتایج یک کوئری دیگر به کار میرود. در Nested Query، نتیجه کوئری داخلی به عنوان ورودی برای کوئری بیرونی استفاده میشود. از Nested Query میتوان برای حل مسائل پیچیدهتری نظیر بازیابی دادههایی با شرایط چندگانه، و یا بازیابی دادههایی با شرایطی که بر اساس نتایج یک کوئری دیگر تعیین میشوند، استفاده کرد.
برای مثال، فرض کنید که میخواهید تمامی دانشآموزانی را که معدل بالاتری از معدل کلاس دارند، بازیابی کنید. میتوانید از دستور زیر استفاده کنید:
SELECT AVG(GPA) FROM students
میانگین معدل دانشآموزان را محاسبه میکند. سپس، کوئری بیرونی
SELECT * FROM students WHERE GPA > (SELECT AVG(GPA) FROM students)
تمامی دانشآموزانی را که معدل بالاتری از معدل کلاس دارند، بازیابی میکند.
#Learning
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
توابع SQL شامل توابع رشتهای، عددی، تاریخی، تبدیل، و توابع پیشرفته مانند توابع تحلیلی و توابع رتبهبندی در SQL Server و سایر سیستمهای مدیریت پایگاه دادهها مانند MySQL، Oracle، PostgreSQL و غیره هستند. توابع رشتهای شامل توابعی مانند
CONCAT
، LEN
، LOWER
، UPPER
، LEFT
، RIGHT
، SUBSTRING
و REPLACE
هستند. توابع عددی شامل توابعی مانند ABS
، CEILING
، FLOOR
، ROUND
، EXP
، LOG
، LOG10
، POWER
و SQRT
هستند. توابع تاریخی شامل توابعی مانند GETDATE
، DATEADD
، DATEDIFF
، YEAR
، MONTH
و DAY
هستند. توابع تبدیل شامل توابعی مانند CAST
و CONVERT
هستند. توابع پیشرفته شامل توابعی مانند SUM
، AVG
، COUNT
، MAX
، MIN
، GROUP BY
، HAVING
، DISTINCT
، UNION
و JOIN
هستند.به عنوان مثال، برای استفاده از تابع LEN در SQL ، میتوانید از دستور زیر استفاده کنید:
SELECT LEN(name) FROM Students;
این دستور، طول ستون name را برای هر ردیف در جدول محاسبه میکند.
همچنین، برای استفاده از تابع CONCAT میتوانید از دستور زیر استفاده کنید:
SELECT CONCAT(name, ' ', stud_id) AS student FROM Students;این دستور، دو ستون مورد نظر را به همراه یک فاصله بین آنها به صورت یک ستون جدید با نام student در جدول نمایش میدهد.
Nested Queries
در Nested Query یا Subquery، یک کوئری داخلی درون یک کوئری بیرونی است که به منظور بازیابی دادهها از چندین جدول یا اعمال شرایط بر اساس نتایج یک کوئری دیگر به کار میرود. در Nested Query، نتیجه کوئری داخلی به عنوان ورودی برای کوئری بیرونی استفاده میشود. از Nested Query میتوان برای حل مسائل پیچیدهتری نظیر بازیابی دادههایی با شرایط چندگانه، و یا بازیابی دادههایی با شرایطی که بر اساس نتایج یک کوئری دیگر تعیین میشوند، استفاده کرد.
برای مثال، فرض کنید که میخواهید تمامی دانشآموزانی را که معدل بالاتری از معدل کلاس دارند، بازیابی کنید. میتوانید از دستور زیر استفاده کنید:
SELECT * FROM students WHERE GPA > (SELECT AVG(GPA) FROM students);در این دستور، کوئری داخلی
SELECT AVG(GPA) FROM students
میانگین معدل دانشآموزان را محاسبه میکند. سپس، کوئری بیرونی
SELECT * FROM students WHERE GPA > (SELECT AVG(GPA) FROM students)
تمامی دانشآموزانی را که معدل بالاتری از معدل کلاس دارند، بازیابی میکند.
#Learning
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
ورود به دنیای برنامه نویسی با کوئرا
📣 ۳۰ درصد تخفیف بر روی تمامی دورههای برنامهنویسی کوئرا برای تویی که اولین بار تو دورههای کوئراکالج شرکت میکنی.
🎁 فرصتی برای رشد، یادگیری اصولی و آشنایی با دنیای برنامهنویسی
✅ گواهی معتبر کوئراکالج
✅ از مقدماتی تا پیشرفته
✅ تمرین و پروژه محور
✅ داوری خودکار
💳 با امکان پرداخت قسطی
💎 اطلاعات بیشتر و مشاهده کوئراکالج:
🔗 https://quera.org/r/mxbcn
کوئرا، جامعه برنامهنویسان ایران
📣 ۳۰ درصد تخفیف بر روی تمامی دورههای برنامهنویسی کوئرا برای تویی که اولین بار تو دورههای کوئراکالج شرکت میکنی.
🎁 فرصتی برای رشد، یادگیری اصولی و آشنایی با دنیای برنامهنویسی
✅ گواهی معتبر کوئراکالج
✅ از مقدماتی تا پیشرفته
✅ تمرین و پروژه محور
✅ داوری خودکار
💳 با امکان پرداخت قسطی
💎 اطلاعات بیشتر و مشاهده کوئراکالج:
🔗 https://quera.org/r/mxbcn
کوئرا، جامعه برنامهنویسان ایران
Forwarded from نشریه صفر و یک
📣 فراخوان همکاری نشریه علمی-تخصصی صفر و یک در بخشهای :
🔴 نویسندگی
🟠 صفحه آرایی
🟢 ویراستاری
🔵 اگر به نوشتن مطالب مرتبط با علوم کامپیوتر و تحقیق در این زمینه ها علاقهمند هستین و یا میتونید در زمینه ویرایش متن بهمون کمک کنید و یا تجربه و علاقه به کار در بخش گرافیکی (Photoshop, Illustrator و ..) رو دارین، نشریهی صفر و یک برای ادامه کارش از شما دعوت به همکاری میکنه.
از هر رشته ای که هستین و به هر کدوم از مباحث بالا علاقه دارین یا فکر میکنین در زمینه خاصی میتونین به ما کمک کنید حتما بهمون اطلاع بدین ما هم خیلی خوشحال میشیم :)
برای تماس با ما به آیدی زیر پیام بدین:
🆔 @Kosar_d10
🔴 نویسندگی
🟠 صفحه آرایی
🟢 ویراستاری
🔵 اگر به نوشتن مطالب مرتبط با علوم کامپیوتر و تحقیق در این زمینه ها علاقهمند هستین و یا میتونید در زمینه ویرایش متن بهمون کمک کنید و یا تجربه و علاقه به کار در بخش گرافیکی (Photoshop, Illustrator و ..) رو دارین، نشریهی صفر و یک برای ادامه کارش از شما دعوت به همکاری میکنه.
از هر رشته ای که هستین و به هر کدوم از مباحث بالا علاقه دارین یا فکر میکنین در زمینه خاصی میتونین به ما کمک کنید حتما بهمون اطلاع بدین ما هم خیلی خوشحال میشیم :)
برای تماس با ما به آیدی زیر پیام بدین:
🆔 @Kosar_d10
Forwarded from QUERA
📣 ۳۵ درصد تخفیف تکرار نشدنی بر روی تمامی دوره های کوئرا کالج مخصوص اعضای انجمن علمی
🎁 اگر دنبال یه فرصت استثنایی برای یادگرفتن برنامهنویسی بودی اون فرصت همین الانه!
فرصتی برای رشد، یادگیری اصولی و حرفه ای شدن در دنیای برنامه نویسی.
✅ گواهی معتبر کوئراکالج
✅ از مقدماتی تا پیشرفته
✅ تمرین و پروژه محور
✅ داوری خودکار
💳 با امکان پرداخت قسطی
⌛️فقط یک هفته فرصت داری از این تخفیف استفاده کنی
🚀 با کوئراکالج تواناییهات رو به چالش بکش.
💎 اطلاعات بیشتر و مشاهده کوئراکالج:
🔗 https://quera.org/r/e1xv3
کوئرا، جامعه برنامهنویسان ایران
🎁 اگر دنبال یه فرصت استثنایی برای یادگرفتن برنامهنویسی بودی اون فرصت همین الانه!
فرصتی برای رشد، یادگیری اصولی و حرفه ای شدن در دنیای برنامه نویسی.
✅ گواهی معتبر کوئراکالج
✅ از مقدماتی تا پیشرفته
✅ تمرین و پروژه محور
✅ داوری خودکار
💳 با امکان پرداخت قسطی
⌛️فقط یک هفته فرصت داری از این تخفیف استفاده کنی
🚀 با کوئراکالج تواناییهات رو به چالش بکش.
💎 اطلاعات بیشتر و مشاهده کوئراکالج:
🔗 https://quera.org/r/e1xv3
کوئرا، جامعه برنامهنویسان ایران
Forwarded from CodeCup
🏆ثبتنام هشتمین دوره از مسابقات کشوری #CodeCup شروع شد.
💻اگه عاشق کد زدن هستی، به لیگ ملی برنامهنویسی دانشجویی دعوتی!
🌀 #کدکاپ ۸، بزرگترین مسابقه برنامهنویسی کشوره که با موضوع الگوریتم برگزار میشه: هر سه هفته، یک مسابقه آنلاین!
🔵 این دوره از کدکاپ با همراهی «ستاد توسعه اقتصاد دانشبنیان دیجیتال» برگزار میشه.
- مسابقه دستگرمی: ۱ تا ۳ اسفند ۱۴۰۲
- ۶ دور مسابقه انتخابی: ۴ اسفند ۱۴۰۲ تا ۱۸ خرداد ۱۴۰۳
- مسابقه نهایی: تیر ۱۴۰۳
🎁 بیش از ۴۰۰ میلیون جایزه نقدی
🔻ثبتنام رایگان و اطلاعات بیشتر👇
🔗 https://quera.org/r/9vtnh
➖➖➖➖➖
📱@codecup @quera_ir
#Algorithm
💻اگه عاشق کد زدن هستی، به لیگ ملی برنامهنویسی دانشجویی دعوتی!
🌀 #کدکاپ ۸، بزرگترین مسابقه برنامهنویسی کشوره که با موضوع الگوریتم برگزار میشه: هر سه هفته، یک مسابقه آنلاین!
🔵 این دوره از کدکاپ با همراهی «ستاد توسعه اقتصاد دانشبنیان دیجیتال» برگزار میشه.
- مسابقه دستگرمی: ۱ تا ۳ اسفند ۱۴۰۲
- ۶ دور مسابقه انتخابی: ۴ اسفند ۱۴۰۲ تا ۱۸ خرداد ۱۴۰۳
- مسابقه نهایی: تیر ۱۴۰۳
🎁 بیش از ۴۰۰ میلیون جایزه نقدی
🔻ثبتنام رایگان و اطلاعات بیشتر👇
🔗 https://quera.org/r/9vtnh
➖➖➖➖➖
📱@codecup @quera_ir
#Algorithm
Forwarded from نشریه صفر و یک
💰 ناتکوین، راست یا دروغ؟
❓ناتکوین چیست؟
❓آیا کسب درآمد از این بازی امکان پذیر است؟
❓چه کسانی پشت بازی نات کوین هستند؟
🖥 سوالاتی که این روزها بسیار پرتکرار شده اند. در این شماره از صفر و یک، علاوه بر پاسخ دادن به این سوالات؛ با نات کوین، چیستی میم کوین ها و شبکه بلاکچین Ton آشنا میشیم و همچنین از دیدگاه اقتصادی نیز نگاهی به این بازی خواهیم انداخت.
#زمستان_1402
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
@SefrOYekPub | نشریه علمی صفر و یک
❓ناتکوین چیست؟
❓آیا کسب درآمد از این بازی امکان پذیر است؟
❓چه کسانی پشت بازی نات کوین هستند؟
🖥 سوالاتی که این روزها بسیار پرتکرار شده اند. در این شماره از صفر و یک، علاوه بر پاسخ دادن به این سوالات؛ با نات کوین، چیستی میم کوین ها و شبکه بلاکچین Ton آشنا میشیم و همچنین از دیدگاه اقتصادی نیز نگاهی به این بازی خواهیم انداخت.
#زمستان_1402
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
@SefrOYekPub | نشریه علمی صفر و یک
Forwarded from نشریه صفر و یک
⚔سرنوشت جنگ جهانی دوم را که رقم زد؟
🛡در جنگ جهانی دوم، کدگذاری و استفاده از ماشین انیگما به عنوان یک دستگاه رمزنگاری حیاتی برای کشورها در تبادل اطلاعات محرمانه به کار گرفته شد.
🛡در این شماره نشریه صفر و یک، به بررسی این ماشین و نحوه رمزگشایی آن توسط تورینگ و متفقین میپردازیم.
#زمستان_1402
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
@SefrOYekPub | نشریه علمی صفر و یک
🛡در جنگ جهانی دوم، کدگذاری و استفاده از ماشین انیگما به عنوان یک دستگاه رمزنگاری حیاتی برای کشورها در تبادل اطلاعات محرمانه به کار گرفته شد.
🛡در این شماره نشریه صفر و یک، به بررسی این ماشین و نحوه رمزگشایی آن توسط تورینگ و متفقین میپردازیم.
#زمستان_1402
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
@SefrOYekPub | نشریه علمی صفر و یک
Forwarded from نشریه صفر و یک
🔥ظهور بلاکچین و تولد NFTها
🔗ان اف تی چیست؟
🔗چرا ان اف تی ها میتوانند انقلاب هنری عصر دیجیتال باشند؟
🔗چرا یک فایل تصویری به قیمت چند میلیون دلار به فروش میرسد؟
🔗چطور میشه با ان اف تی به درآمد های کلان رسید؟
🖋اگر حتی یک بار هم اسم NFTها به گوشِت خورده، پیشنهاد میکنم این بخش هیجان انگیز رو در سری جدید نشریه صفر و یک، به هیچوجه از دست ندی، چون به صورت کامل به تمامی سوالاتت جواب میدیم.
#زمستان_1402
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
@SefrOYekPub | نشریه علمی صفر و یک
🔗ان اف تی چیست؟
🔗چرا ان اف تی ها میتوانند انقلاب هنری عصر دیجیتال باشند؟
🔗چرا یک فایل تصویری به قیمت چند میلیون دلار به فروش میرسد؟
🔗چطور میشه با ان اف تی به درآمد های کلان رسید؟
🖋اگر حتی یک بار هم اسم NFTها به گوشِت خورده، پیشنهاد میکنم این بخش هیجان انگیز رو در سری جدید نشریه صفر و یک، به هیچوجه از دست ندی، چون به صورت کامل به تمامی سوالاتت جواب میدیم.
#زمستان_1402
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
@SefrOYekPub | نشریه علمی صفر و یک
Forwarded from نشریه صفر و یک
📌 Welcome to the Polytechnic University of Milan:
A Tradition Of Excellence
✨ دانشگاه پلی تکنیک میلان؛ آنجا که
علوم کامپیوتر با آیندهای روشن در دستان شماست.
🏢 پلی تکنیک با کارنامهای دیرینه بیش از ۱۵۰ سال، میتواند یکی از برجستهترین مراکز آموزشی و پژوهشی در ایتالیا برای ادامهی مسیر تحصیلی شما باشد.
📚 با صفر و یک برای شروع یک ماجراجویی هیجان انگیز در خانهای پر از فناوری و امکانات همراه شوید.
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
@SefrOYekPub | نشریه علمی صفر و یک
A Tradition Of Excellence
✨ دانشگاه پلی تکنیک میلان؛ آنجا که
علوم کامپیوتر با آیندهای روشن در دستان شماست.
🏢 پلی تکنیک با کارنامهای دیرینه بیش از ۱۵۰ سال، میتواند یکی از برجستهترین مراکز آموزشی و پژوهشی در ایتالیا برای ادامهی مسیر تحصیلی شما باشد.
📚 با صفر و یک برای شروع یک ماجراجویی هیجان انگیز در خانهای پر از فناوری و امکانات همراه شوید.
➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️➖️
@CS_KHU | انجمن علمی علوم کامپیوتر
@SefrOYekPub | نشریه علمی صفر و یک