مرکزی مواد پر جائیں
ماڈیول 4 · سبق 1 از 2کورس میں 7/10~12 min
ماڈیول اسباق (1/2)

ڈیٹا کو فلٹر کرنا اور منتخب کرنا

Tidyverse ڈیٹا سائنس کے لیے ڈیزائن کردہ R پیکجوں کا ایک مجموعہ ہے جو ایک مشترکہ فلسفہ، گرامر، اور ڈیٹا ڈھانچے کا اشتراک کرتے ہیں۔ اس سویٹ میں ڈیٹا کی ہیرا پھیری کے لیے بنیادی پیکیج کو dplyr کہا جاتا ہے۔

dplyr فنکشنز کا ایک سیٹ متعارف کراتا ہے ("فعل") جو ڈیٹا فریم کی ہیرا پھیری کو انتہائی بدیہی بناتا ہے۔


پائپ آپریٹر (%>% یا |>)

Tidyverse فلسفہ ایک دوسرے کے ساتھ زنجیروں کی کارروائیوں پر مرکوز ہے۔ پائپ آپریٹر %>% (یا مقامی پائپ |> R 4.1+ میں متعارف کرایا گیا ہے) ایک اظہار کا نتیجہ لیتا ہے اور اسے اگلے فنکشن میں پہلی دلیل کے طور پر منتقل کرتا ہے۔ یہ نیسٹڈ فنکشن کالز سے بچتا ہے اور آپ کے ورک اسپیس کو عارضی متغیرات کے ساتھ بے ترتیبی سے روکتا ہے۔

R
# Without pipe:
filter(select(df, name, age), age > 20)

# With pipe:
df %>%
  select(name, age) %>%
  filter(age > 20)

فلٹرنگ اور سلیکشن کے لیے dplyr فعل

ڈیٹا فریم سے ڈیٹا نکالنے کے لیے تین بنیادی فعل ہیں:

1. select()

ڈیٹا فریم سے مخصوص کالم منتخب کرتا ہے۔ آپ کالموں کو خارج کرنے کے لیے - سابقہ ​​رکھنے یا استعمال کرنے کے لیے کالم کے ناموں کی فہرست بنا سکتے ہیں۔

R
# Select the 'name' and 'salary' columns
select(df, name, salary)

# Remove the 'address' column
select(df, -address)

2. filter()

ایک یا زیادہ منطقی حالات کی بنیاد پر قطاروں کو فلٹر کرتا ہے۔

R
# 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() میں لپیٹیں۔

R
# Sort by age (ascending)
arrange(df, age)

# Sort by salary (descending)
arrange(df, desc(salary))

خود ہی آزمائیں۔

مشق 1: کالم منتخب کریں۔

ورزش#r.m4.l1.e1
کوششیں: 0لوڈ ہو رہا ہے…

ڈیٹا فریم df کو دیکھتے ہوئے، select() کا استعمال کرتے ہوئے نام اور عمر کے کالم منتخب کریں اور نتیجہ کو df_selected میں محفوظ کریں۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

USA: df_selected <- منتخب کریں (df، نام، عمر)

3 کوششوں کے بعد حل دستیاب ہے۔

ورزش#r.m4.l1.e2
کوششیں: 0لوڈ ہو رہا ہے…

ڈیٹا فریم df کی قطاروں کو فلٹر کریں جہاں عمر کا کالم سختی سے 18 سے زیادہ ہے، نتیجہ کو df_adults میں محفوظ کرتے ہوئے

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

فلٹر (df, age > 18) فنکشن استعمال کریں اور نتیجہ df_adults کو تفویض کریں۔

3 کوششوں کے بعد حل دستیاب ہے۔

ورزش#r.m4.l1.e3
کوششیں: 0لوڈ ہو رہا ہے…

سلسلہ آپریشنز کے لیے پائپ آپریٹر %>% کا استعمال کریں: پہلے فلٹر df صرف ریکارڈ رکھیں جہاں کی عمر > 18، اور پھر نام کا کالم منتخب کریں۔ نتیجہ res میں محفوظ کریں۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

سکریوی: res <- df %>% فلٹر (عمر > 18) %>% سلیکٹ (نام)

3 کوششوں کے بعد حل دستیاب ہے۔

ورزش#r.m4.l1.e4
کوششیں: 0لوڈ ہو رہا ہے…

arrange() اور desc() کا استعمال کرتے ہوئے تنخواہ کے کالم کی بنیاد پر ڈیٹا فریم ڈی ایف کی قطاروں کو نزولی ترتیب میں ترتیب دیں۔ نتیجہ کو df_sorted میں محفوظ کریں۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

USA arrange(desc(salary)) all'interno di una pipeline o come argomento diretto.

3 کوششوں کے بعد حل دستیاب ہے۔

ورزش#r.m4.l1.e5
کوششیں: 0لوڈ ہو رہا ہے…

df پر ایک مکمل پائپ لائن لکھیں: وہ ریکارڈ فلٹر کریں جہاں ڈیپارٹمنٹ 'IT' کے برابر ہو، کالم کا نام اور تنخواہ منتخب کریں، اور تنخواہ (صعودی) کے حساب سے ترتیب دیں۔ حتمی نتیجہ res میں محفوظ کریں۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

پائپ %>% کو چین فلٹر کرنے کے لیے استعمال کریں (محکمہ == 'IT')، منتخب کریں (نام، تنخواہ)، اور بندوبست کریں

3 کوششوں کے بعد حل دستیاب ہے۔