logo

Python dasturlash tili kutubxonalari bilan sun’iy intellekt tizimlarini ishlab chiqish. Pandas kutubxonasi

Загружено в:

08.08.2023

Скачано:

0

Размер:

1186.810546875 KB
Python dasturlash tili kutubxonalari bilan sun’iy intellekt tizimlarini
ishlab chiqish.   Pandas kutubxonasi .
Reja:
1. Pandas
2. Series ma’lumotlar tuzilmasi
3. DataFrame ma’lumotlar tuzilmasi Pandas - bu ochiq manbali kutubxona bo'lib, u asosan aloqador yoki 
etiketli ma'lumotlar bilan oson va intuitiv tarzda ishlash uchun yaratilgan.   U 
turli xil ma'lumotlar tuzilmalari va raqamli ma'lumotlar va vaqt seriyalarini 
manipulyatsiya qilish uchun operatsiyalarni taqdim etadi.   Bu kutubxona 
NumPy kutubxonasi ustiga qurilgan.   Pandas tez va u foydalanuvchilar uchun 
yuqori unumdorlikka ega.
Pandas kutubxonasi afzalliklari:  
 Ma'lumotlarni manipulyatsiya qilish va tahlil qilish uchun tez va 
samarali.
 Turli fayl ob'ektlaridan ma'lumotlarni yuklash mumkin.
 Suzuvchi nuqtada etishmayotgan ma'lumotlarni (NaN sifatida 
ko'rsatilgan) va suzuvchi nuqta ma'lumotlarini oson boshqarish
 Hajmi o'zgaruvchanligi: ustunlarni DataFrame va undan yuqori 
o'lchamli ob'ektlardan kiritish va o'chirish mumkin
 Ma'lumotlar to'plamini birlashtirish va qo'shish.
 Ma'lumotlar to'plamlarini moslashuvchan qayta shakllantirish va 
aylantirish
 Vaqt seriyali funksiyalarini ta'minlaydi.
 Ma'lumotlar to'plamlarida bo'lish va birlashtirish operatsiyalarini 
bajarish uchun funktsional imkoniyatlar mavjudligi.
Pandasda ishlashning birinchi qadami uning Python papkasida o'rnatilgan 
yoki o'rnatilmaganligiga ishonch hosil qilishdir.   Agar yo'q bo'lsa, biz uni 
tizimimizga   pip buyrug'i   yordamida o'rnatishimiz kerak: pip install pandas.
Pandas tizimga o'rnatilgandan so'ng, kutubxonani import qilishingiz kerak:
Import pandas as pd
Pandas odatda ma'lumotlarni manipulyatsiya qilish uchun ikkita ma'lumotlar 
tuzilmasini taqdim etadilar, ular:  
 Seriya  DataFrame
Series ma’lumotlar tuzilmasi
Series:   Pandas Series   - bu har qanday turdagi ma'lumotlarni (int, string, 
float, python ob'ektlari va boshqalar) saqlashga qodir bo'lgan bir o'lchovli 
etiketli massiv.  
Pandas kutubxonasidagi Series ma’lumotlar tuzilmasini Pythondagi oddiy 
kutubxonalardan farqlaridan biri ro’yhatdagi obyektlarga o’zimiz index 
berishimiz mumkin.
Dastlab “object” nomli Series turidagi massiv yaratib, indexlarini o’zimiz 
beramiz.
Obyekt ichidagi qiymatlarga indeks orqali murojaat qilamiz:
Series   obyektiga oid ba'zi parametrlar va metodlar:
1) values – obyekt qiymatlarini ekranga chiqaradi
2) hasnans – NaN qiymatlar bor yoki yo’qligini tekshiradi.
3) dtype – qiymatlarning ma’lumot turini tekshiradi 4) is_unique – qiymatlar takrorlanmas ekanligini tekshiradi
5) shape – Series hajmini aniqlaydi
6) max va min – qiymatlarning maksimum va minimumini aniqlaydi.
DataFrame ma’lumotlar tuzilmasi
Pandas DataFrame 2 o lchovli ma lumotlar strukturasi bo lib, 2 ʻ ʼ ʻ
o lchovli massiv yoki satr va ustunli jadval kabi o’rinishda bo’ladi. Pandas 	
ʻ
DataFrame uchta asosiy komponentdan 
iborat:   ma'lumotlar   ,   qatorlar   va   ustunlar   . Pandas DataFrame mavjud xotiradan ma'lumotlar to'plamini yuklash 
orqali yaratiladi, fayllar SQL ma'lumotlar bazasi, CSV fayli va Excel fayli 
bo'lishi mumkin.   Pandas DataFrame ro yxatlar, lug atlar va hokazolardan ʻ ʻ
yaratilishi mumkin. 
DataFrame   yaratishning bir nechta usuli bor va bulardan eng osoni 
qiymatlari bir hil uzunlikdagi ro'yxatdan iborat lug'at orqali yaratish.
Dastlab “data” nomli lug’at yaratib olamiz
pd.DataFrame() buyrug’i orqali lug’atni DataFramega o’tkazamiz DataFrameda ustunlar tartibini o’zgartirish va yangi ustun qo’shish ham 
mumkin Huddi   Series   kabi   DataFrame   indekslariga ham o'zimiz qiymat berishimiz 
mumkin:
Series   yordamida biror ustunning ma'lum bir qatorlariga o'zgartirish kiritish 
mumkin. Bunda qatorlarning indeksi berilishi shart.
DataFrame   yaratishning yana bir usuli lug'atlar lug'atidan foydalanish. Bunda
tashqi lug'at kalitlari ustun, ichki lug'at kalitlari esa indeks bo'ladi . Indekslar va Ustunlar o'rnini almashtirish uchun   .T   (transpose) metodidan 
foydalanish mumkin.
.values   parametri yordamida   DataFrame   ichidagi qiymatlarni 2-o'lchamli 
massiv ko'rinishida olishimiz mumkin.
DataFrame: Qayta indekslash
DataFrameda qayta indekslash uchun .index funksiyasidan foydalanamiz:
1) .index funksiyasi df nomli DataFrameni indekslarini o’zgartiramiz:
2) .reindex 
.reindex funksiyasi yordamida indekslar o’rnini almashtirishimiz mumkin. .reindex   yordamida yangi indekslar qo'shish va ularni turli usullar (method) 
yordamida to'ldirish ham mumkin
Ustunlarni ham qayta tartiblash mumkin:
3) .drop()
DataFrame dan elementlarni o'chirish.   .drop()
DataFramedan biror qator yoki ustunni o'chirish uchun qator (ustun) 
indeksini bilish kifoya: .drop()   yordamida nafaqat qatorlarni, balki ustunlarni ham o'chirish 
mumkin. Buning   .drop()   metodining   axis   parametri ishlatiladi, axis=1 
qator, axis=0 ustun.
.drop va .reindex kabi funksiyalarni qo’llaganimizda asl DataFrame 
o’zgarmaydi, lekin buni maxsus “inplace” parametri yordamida 
o’zgarishlarni saqlashimiz mumkin. Bu parametr standart False qiymatga ega
bo’ladi. DataFrame va Seriesda elementlarni tanlash
1) Seriesda ma’lumotlar tuzilmasida elementlarni tanlash.
DataFrame aslida Serieslardan tashkil topadi. Yuqoridagi “df” nomli 
DataFramedan Series obyektini yaratib olamiz.
Type funksiyasi orqali “data”ning turini tekshirsak Series ma’lumotlar 
tuzilmasiga oid ekanligini ko’rishimiz mumkin.
“data” nomli Series ma’lumotlar tuzilmasining elementlarini indeks 
orqali tanlashimiz mumkin. “data” nomli Series ma’lumotlar tuzilmasining qandaydir oraliqdagi 
elementlari kerak bo’lsa data[a:b] shaklda murojaat qilamiz.
Series ma’lumotlar tuzilmasining elementlarini filtrlashning quyidagi 
usullari mavjud.
2) DataFrameda ma’lumotlar tuzilmasida elementlarni tanlash.
“df” nomli yangi DataFrame ma’lumotlar tuzilmasini yaratib olamiz. “df” nomli DataFrame ma’lumotlar tuzilmasidan istalgan ustun ajratib 
olish mumkin.
“df” nomli DataFrame ma’lumotlar tuzilmasidan istalgan oraliqdagi 
indekslrni ajratib olish mumkin. “df” nomli yangi DataFrame ma’lumotlar tuzilmasida mantiqiy 
shartlardan ham foydalanish mumkin.
Pandas kutubxonasida arifmetik amallar.
Ikki   Series   yoki   DataFrame   obyektlari o'rtasida arifmetik amallar 
bajarishda indekslar juda muhim rol o'ynaydi. Amallar mos tushuvchi 
indekslar o'rtasida bajariladi. Agar obyektlarning birida mavjud indeks 
ikkinchisda yo'q bo'lsa natija   NaN   bo'ladi.
Arifmetik amallar bajarish uchun 2 ta “s1” va “s2” Series obyektlarini 
yaratib olamiz.
s1+s2 amalini natijasini ko’rishimiz mumkin. s1   da mavjud   c   indeksi   s2da mavjud bo'lmaganligi 
sabab   s1+s2   da   c   indeksdagi qiymat   NaN   bo'ldi. Yuqoridagi 
holat   DataFramelarga ham xos.   Serieslardan farqli ravishda   DataFrameda 
qator va ustun indekslari hisobga olinadi.
DataFrameda Arifmetik amallar bajarish uchun 2 ta “df1” va “df2” 
DataFrame obyektlarini yaratib olamiz,
“df1” va “df2” obyektarini chop qilamiz.
“df1” va “df2” obyektarini qo’shamiz. a   va   d   ustunlar hamda   Olcha   va   Anjir   qatorlar ikkala   DataFrame da 
bo'lmagani sababli yuqoridagi natija chiqdi.
Yuqoridagi qo'shish amalini   .add()   metodi yordamida ham bajarish 
mumkin.
Bunda maxsus   fill_value   parametri yordamida mos tushuvchi 
indekslardagi NaN qiymatlarni boshqa qiymat bilan almashtirish mumkin. Bu
usulda yakuniy natijada ikkala df da ham mavjud bo'lmagan 
indekslarda   NaN   qiymati qoladi. Boshqa arifmetik amallar
 add ,   radd   - Qo'shish (+)
 sub ,   rsub   - Ayirish (-)
 div ,   rdiv   - Bo'lish (/)
 floordiv ,   rfloordiv   - Bo'lish va butun qismini olis (//)
 mul ,   rmul   - Ko'paytirish (*)
 pow ,   rpow   - Eksponenta (**)
Yuqoridagi amallarning barchasida   fill_value   parametri mavjud.  r bilan 
boshlangan metodlarda   DataFrame   ifodaning o'ng tarafida bo'ladi.
Pandas obyekti elementlariga funksiyalarni qo'llash
“df” nomli DataFrame yaratib olamiz va .abs funksiyasini qo’llaymiz.
1) .abs – barcha elementlarni absolyut qiymatini qaytaradi 2) .round – elementlarni yaxlitlash uchun foydalaniladi.
3) .mean – har bir ustunning o’rtacha qiymatini hisoblaydi.
Tartiblash va Reytinglash
Series ma’lumotlar tuzilmasi elementlarini tartiblash uchun dastlab “So” 
nomli Series yaratib olamiz va uni ekranga chop qilamiz.
1) Series   obyektini Indeks bo'yicha tartiblash. 2) Series   obyektini Qiymatlari bo'yicha tartiblash
DataFrame ma’lumotlar tuzilmasi elementlarini tartiblash uchun dastlab 
“df” nomli DataFrameni Githubdan yuklab olamiz va uni ekranga chop 
qilamiz.
1) Indeks bo’yicha tartiblash 2) Ustun nomi bo’yicha tartiblash
3) Teskari tartiblash, agar  axis=1  parametrini qo’llasak ustun bo’yicha 
teskari tartiblanadi. 4) DataFrame   elementlarini biror ustun bo'yicha tartiblash ham mumkin
.rank()   metodi yordamida DataFrame qatorlarini reytingini aniqlash 
mumkin. Reyting aniqlashda aynan qaysi ko'rsatkich (ustun) bo'yicha 
reytingni aniqlash ko'rsatiladi.
  Foydalanilgan adabiyotlar
1. Wolfgang   Ertel.   “Introduction   to   Artificial   Intelligence”.   Germany-
2017.
2. Joshua   Eckroth.   “Python   Artificial   Intelligence   Projects   for
Beginners”.Birmingham 2018.
3. Nigmatov H. “Intellektual tizimlar”. Toshkent-2019.
4. А.В.   Гаврилов.   Системы   искусственного   интеллекта.   Учебное
пособие, ч. 1. - Новосибирск, НГТУ, 2000.  – 115 с.
5. Интеллектуалные системы и их моделирование. - М.: Наука, 1986.
–с. 25-125.
6. Искусственный   интеллект.   Применение   в   интегрированных
производственных   системах.   Под   ред.   Э.Кюсиака.   -   М.:
Машиностроение, 1991.  – с.40-70.
7. Искусственный интеллект. Справочник в 3-х томах. - М.: Радио и
связ, 1990.  – с.30-140.

Python dasturlash tili kutubxonalari bilan sun’iy intellekt tizimlarini ishlab chiqish. Pandas kutubxonasi . Reja: 1. Pandas 2. Series ma’lumotlar tuzilmasi 3. DataFrame ma’lumotlar tuzilmasi

Pandas - bu ochiq manbali kutubxona bo'lib, u asosan aloqador yoki etiketli ma'lumotlar bilan oson va intuitiv tarzda ishlash uchun yaratilgan. U turli xil ma'lumotlar tuzilmalari va raqamli ma'lumotlar va vaqt seriyalarini manipulyatsiya qilish uchun operatsiyalarni taqdim etadi. Bu kutubxona NumPy kutubxonasi ustiga qurilgan. Pandas tez va u foydalanuvchilar uchun yuqori unumdorlikka ega. Pandas kutubxonasi afzalliklari:  Ma'lumotlarni manipulyatsiya qilish va tahlil qilish uchun tez va samarali.  Turli fayl ob'ektlaridan ma'lumotlarni yuklash mumkin.  Suzuvchi nuqtada etishmayotgan ma'lumotlarni (NaN sifatida ko'rsatilgan) va suzuvchi nuqta ma'lumotlarini oson boshqarish  Hajmi o'zgaruvchanligi: ustunlarni DataFrame va undan yuqori o'lchamli ob'ektlardan kiritish va o'chirish mumkin  Ma'lumotlar to'plamini birlashtirish va qo'shish.  Ma'lumotlar to'plamlarini moslashuvchan qayta shakllantirish va aylantirish  Vaqt seriyali funksiyalarini ta'minlaydi.  Ma'lumotlar to'plamlarida bo'lish va birlashtirish operatsiyalarini bajarish uchun funktsional imkoniyatlar mavjudligi. Pandasda ishlashning birinchi qadami uning Python papkasida o'rnatilgan yoki o'rnatilmaganligiga ishonch hosil qilishdir. Agar yo'q bo'lsa, biz uni tizimimizga pip buyrug'i yordamida o'rnatishimiz kerak: pip install pandas. Pandas tizimga o'rnatilgandan so'ng, kutubxonani import qilishingiz kerak: Import pandas as pd Pandas odatda ma'lumotlarni manipulyatsiya qilish uchun ikkita ma'lumotlar tuzilmasini taqdim etadilar, ular:  Seriya

 DataFrame Series ma’lumotlar tuzilmasi Series: Pandas Series - bu har qanday turdagi ma'lumotlarni (int, string, float, python ob'ektlari va boshqalar) saqlashga qodir bo'lgan bir o'lchovli etiketli massiv. Pandas kutubxonasidagi Series ma’lumotlar tuzilmasini Pythondagi oddiy kutubxonalardan farqlaridan biri ro’yhatdagi obyektlarga o’zimiz index berishimiz mumkin. Dastlab “object” nomli Series turidagi massiv yaratib, indexlarini o’zimiz beramiz. Obyekt ichidagi qiymatlarga indeks orqali murojaat qilamiz: Series obyektiga oid ba'zi parametrlar va metodlar: 1) values – obyekt qiymatlarini ekranga chiqaradi 2) hasnans – NaN qiymatlar bor yoki yo’qligini tekshiradi. 3) dtype – qiymatlarning ma’lumot turini tekshiradi

4) is_unique – qiymatlar takrorlanmas ekanligini tekshiradi 5) shape – Series hajmini aniqlaydi 6) max va min – qiymatlarning maksimum va minimumini aniqlaydi. DataFrame ma’lumotlar tuzilmasi Pandas DataFrame 2 o lchovli ma lumotlar strukturasi bo lib, 2 ʻ ʼ ʻ o lchovli massiv yoki satr va ustunli jadval kabi o’rinishda bo’ladi. Pandas ʻ DataFrame uchta asosiy komponentdan iborat: ma'lumotlar , qatorlar va ustunlar .

Pandas DataFrame mavjud xotiradan ma'lumotlar to'plamini yuklash orqali yaratiladi, fayllar SQL ma'lumotlar bazasi, CSV fayli va Excel fayli bo'lishi mumkin. Pandas DataFrame ro yxatlar, lug atlar va hokazolardan ʻ ʻ yaratilishi mumkin. DataFrame yaratishning bir nechta usuli bor va bulardan eng osoni qiymatlari bir hil uzunlikdagi ro'yxatdan iborat lug'at orqali yaratish. Dastlab “data” nomli lug’at yaratib olamiz pd.DataFrame() buyrug’i orqali lug’atni DataFramega o’tkazamiz