ماڈیول اسباق (1/2)
ڈیٹا کو فلٹر کرنا اور منتخب کرنا
Tidyverse ڈیٹا سائنس کے لیے ڈیزائن کردہ R پیکجوں کا ایک مجموعہ ہے جو ایک مشترکہ فلسفہ، گرامر، اور ڈیٹا ڈھانچے کا اشتراک کرتے ہیں۔ اس سویٹ میں ڈیٹا کی ہیرا پھیری کے لیے بنیادی پیکیج کو dplyr کہا جاتا ہے۔
dplyr فنکشنز کا ایک سیٹ متعارف کراتا ہے ("فعل") جو ڈیٹا فریم کی ہیرا پھیری کو انتہائی بدیہی بناتا ہے۔
پائپ آپریٹر (%>% یا |>)
Tidyverse فلسفہ ایک دوسرے کے ساتھ زنجیروں کی کارروائیوں پر مرکوز ہے۔ پائپ آپریٹر %>% (یا مقامی پائپ |> R 4.1+ میں متعارف کرایا گیا ہے) ایک اظہار کا نتیجہ لیتا ہے اور اسے اگلے فنکشن میں پہلی دلیل کے طور پر منتقل کرتا ہے۔ یہ نیسٹڈ فنکشن کالز سے بچتا ہے اور آپ کے ورک اسپیس کو عارضی متغیرات کے ساتھ بے ترتیبی سے روکتا ہے۔
# Without pipe:
filter(select(df, name, age), age > 20)
# With pipe:
df %>%
select(name, age) %>%
filter(age > 20)فلٹرنگ اور سلیکشن کے لیے dplyr فعل
ڈیٹا فریم سے ڈیٹا نکالنے کے لیے تین بنیادی فعل ہیں:
1. select()
ڈیٹا فریم سے مخصوص کالم منتخب کرتا ہے۔ آپ کالموں کو خارج کرنے کے لیے - سابقہ رکھنے یا استعمال کرنے کے لیے کالم کے ناموں کی فہرست بنا سکتے ہیں۔
# Select the 'name' and 'salary' columns
select(df, name, salary)
# Remove the 'address' column
select(df, -address)2. filter()
ایک یا زیادہ منطقی حالات کی بنیاد پر قطاروں کو فلٹر کرتا ہے۔
# Filter rows where age is greater than 30
filter(df, age > 30)
# Filter using multiple conditions (logical AND)
filter(df, age > 30, department == "HR")3. arrange()
ایک یا زیادہ کالموں کی قدروں کی بنیاد پر قطاروں کو ترتیب دیتا ہے۔ ترتیب دینے کی ترتیب بطور ڈیفالٹ بڑھ رہی ہے۔ نزولی ترتیب میں ترتیب دینے کے لیے، کالم کا نام desc() میں لپیٹیں۔
# Sort by age (ascending)
arrange(df, age)
# Sort by salary (descending)
arrange(df, desc(salary))خود ہی آزمائیں۔
مشق 1: کالم منتخب کریں۔
ڈیٹا فریم df کو دیکھتے ہوئے، select() کا استعمال کرتے ہوئے نام اور عمر کے کالم منتخب کریں اور نتیجہ کو df_selected میں محفوظ کریں۔
اشارہ دکھائیں۔
USA: df_selected <- منتخب کریں (df، نام، عمر)
3 کوششوں کے بعد حل دستیاب ہے۔
ڈیٹا فریم df کی قطاروں کو فلٹر کریں جہاں عمر کا کالم سختی سے 18 سے زیادہ ہے، نتیجہ کو df_adults میں محفوظ کرتے ہوئے
اشارہ دکھائیں۔
فلٹر (df, age > 18) فنکشن استعمال کریں اور نتیجہ df_adults کو تفویض کریں۔
3 کوششوں کے بعد حل دستیاب ہے۔
سلسلہ آپریشنز کے لیے پائپ آپریٹر %>% کا استعمال کریں: پہلے فلٹر df صرف ریکارڈ رکھیں جہاں کی عمر > 18، اور پھر نام کا کالم منتخب کریں۔ نتیجہ res میں محفوظ کریں۔
اشارہ دکھائیں۔
سکریوی: res <- df %>% فلٹر (عمر > 18) %>% سلیکٹ (نام)
3 کوششوں کے بعد حل دستیاب ہے۔
arrange() اور desc() کا استعمال کرتے ہوئے تنخواہ کے کالم کی بنیاد پر ڈیٹا فریم ڈی ایف کی قطاروں کو نزولی ترتیب میں ترتیب دیں۔ نتیجہ کو df_sorted میں محفوظ کریں۔
اشارہ دکھائیں۔
USA arrange(desc(salary)) all'interno di una pipeline o come argomento diretto.
3 کوششوں کے بعد حل دستیاب ہے۔
df پر ایک مکمل پائپ لائن لکھیں: وہ ریکارڈ فلٹر کریں جہاں ڈیپارٹمنٹ 'IT' کے برابر ہو، کالم کا نام اور تنخواہ منتخب کریں، اور تنخواہ (صعودی) کے حساب سے ترتیب دیں۔ حتمی نتیجہ res میں محفوظ کریں۔
اشارہ دکھائیں۔
پائپ %>% کو چین فلٹر کرنے کے لیے استعمال کریں (محکمہ == 'IT')، منتخب کریں (نام، تنخواہ)، اور بندوبست کریں
3 کوششوں کے بعد حل دستیاب ہے۔