Laboratoriya ishlar Yo'q 7 Funktsional dasturiy ( yineleme va yo'nalt ) Maqsad



Download 18,73 Kb.
Sana11.01.2022
Hajmi18,73 Kb.
#350624

Laboratoriya ishlar Yo'q 7

Funktsional dasturiy ( yineleme va yo'nalt )

Maqsad: funktsional dasturlash xususiyatlari bilan tanishish . Qanday o'rganish amal funktsional ya'ni paketi yordamida dasturiy purrr . Vazifalarni tegishli dasturlash uslubida hal qiling . Hisobot tuzish.

Nazariy ma'lumotlar

Til R funktsional dasturlash paradigmasi qo'llab-quvvatlaydi , kuni eng yaxshi, uni amalga oshirish va funksiyalarini oshirish uchun dnako , u bir paketi foydalanish tavsiya etiladi purrr , qo'shimcha ravishda, siz ham paketi yuklab olish va o'rnatish kerak repurrrsive vazifalar uchun ma'lumotlar silsilasini o'z ichiga olgan, Men №1 .



Takrorlash

Takrorlash - bu ma'lumotlar qayta ishlashni tashkil etish, unda harakatlar ko'p marta takrorlanadi. Dasturlashda takrorlashlar ko'pincha tizimli dasturlashning elementlari, ya'ni tsiklning bitta bosqichi sifatida qaraladi. Amalda takrorlash funktsional dasturlashda ham muhim ahamiyatga ega, masalan, bir xil funktsiyani takrorlanadigan jarayon sifatida turli elementlarga tatbiq etishingiz mumkin. Kodi misolini ko'rib chiqaylik , ma'lumotlar to'plamidir bir xil turdagi tarkibiy va funksional uslubida yozilgan.

# Sinovlar ro'yxatini yarating

iris_list <- as.list ( iris [ 1 : 4 ])

 

# Amalga oshirish ham tarkibiy uslubi



iris_me a n <- list ()

uchun ( i yilda seq_along ( iris_list )) {

  iris_me a n [[ i ]] <- o'rtacha ( iris_list [[ i ]])

}

 



# Xarita orqali funktsional uslubda amalga oshirish

iris_me a n <- xarita ( iris_list , o'rtacha )

1-rasm - Funktsional va tizimli amalga oshirishni taqqoslash

Xarita funktsiyasi ikkita dasturga ega (2-rasm).

# Funktsiyaga kirish nuqtasini ko'rsatmasdan xaritani amalga oshirish

iris_mean <- xarita ( iris_list , o'rtacha )

 

# Funktsiyaga kirish nuqtasini ko'rsatadigan xaritani amalga oshirish



iris_mean <- xaritasi ( iris_list , ~ o'rtacha ( .X ))

2-rasm - xaritalar sintaksisining imkoniyatlari

Amaliyotning ikkinchi variantida varaq elementini (". X ") tilde belgisi ("~") orqali o'tkazish joyini ko'rsatish mumkin . Amalga oshirish uchun ikkinchi yo'l afzaldir.

Xaritaning o'zgarishi . xarita _ *

Xarita funktsiyasi shunga o'xshash tuzilishga ega bo'lgan ro'yxatni chiqaradi , lekin ko'pincha natijani darhol biron bir versiyaga aylantirish kerak bo'ladi, buning uchun xarita funktsiyasining hosilalari ishlatiladi :

xarita ( .x, .f, ...)

map_ if ( .x, .p, .f , ...)

map_ at ( .x , .at, .f , ...)

map_ lgl ( .x, .f , ...)

map_ chr ( .x, .f , ...)

map_ int ( .x, .f , ...)

map_ dbl ( .x, .f , ...)

map_ dfr ( .x, .f , ..., .id = NULL)

map_ dfc ( .x, .f , ...)

yurish ( .x, .f, ...)

# Map _ dbl yordamida nomlangan sonli vektor yarating

iris_mean <- map_ dbl ( iris_list , ~ o'rtacha ( .X ))

3-shakl, - yaratish nomlari Hovhan th raqamli vektor yordamida map_dbl

Konveyer ( quvur liniyasi )

Quvur liniyasi asl funktsiya qiymatini keyingisiga o'tkazish uchun vositadir . Quvur liniyasi funktsional dasturlashning odatiy elementini ifodalaydi. R tilida quvur liniyasi%>% ga teng. Quvur liniyasi sintaksisi 4-rasmda keltirilgan.

funktsiya _ oldin ( )%>%

  funktsiya _ keyin ()

Shakl 4 - Quvur liniyasi sintaksisi



Amaliy qism

Vazifa 1. Qayta tiklanadigan paketning sinov ma'lumotlaridan foydalanib , quyidagi topshiriqni bajaring . Shunga o'xshash qurilish ro'yxatiga bir nomidagi ro'yxatini yaratish SW _ filmlar , tashkil etish men foydali xususiyati nomidagi majmuini _ nomlari paketi purrr . Ro'yxat elementlari nomi sifatida siz tegishli film nomlaridan foydalanishingiz kerak (ro'yxat elementlariga indeksdan ham, element nomidan ham foydalanishingiz mumkinligiga e'tibor bering). Topshiriqni funktsional uslubda bajaring.

Vazifa 2. Purrr to'plami hujjatlaridan foydalanib , xarita _ * oilasining funktsiyalarining farqlari va xususiyatlarini tavsiflang . Har xil test ma'lumotlari yordamida amalga oshirishga misollar keltiring. Ma'lumotlar to'plamlari to'plamidan yoki o'zingizning test to'plamlarini yaratish orqali olinishi mumkin . Ma'lumotlar to'plami to'plamidan ma'lumotlarni ko'rish uchun kutubxonani ishga tushiring ( help = " ma'lumotlar to'plamlari ")
Download 18,73 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish