O'qituvch F. I. Sh


Download 325.02 Kb.
bet1/4
Sana19.06.2023
Hajmi325.02 Kb.
#1609490
  1   2   3   4
Bog'liq
3- joriy Fully


MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT
AXBOROT TEXNOLOGIYALARI UNIVERSITETI
FARG'ONA FILIALI

O'quv yili: 2022-2023,
Semestr: 6-semestr,
Mutaxassislik: Kompyuter injiniringi: Kompyuter injiniringi
Kafedra: Axborot ta'lim texnologiyalari
Fan nomi: Mashinali o'qitishga kirish
O'qituvch F.I.Sh.: ISROILOV SHAROBIDDIN MAXAMADYUSUFOVICH
Mashg'ulot: Amaliy

No

Fan mavzulari

1 Nazariy malumot

pandas kutubkonasi haqida

pandas API imkoniyatlari

DataFraym larni yaratish tehnalogiyalari

2 amaliy ish

Xar bir talaba ozining hems raqami mos yilda jahon bozoridagi 1 barel neft, 1 karat oltin, 1 tonna shaker, 1gramm uran narxlarining dollor kursi boyicha 12 oylik ozgarish davri malumotlar bazasini excel da shakillantirib, har bir tavar uchun aloxida exsel faylga malumot yozuvchi dastur tuzing,

davr

neft

oltin

shakar

uran

1













2













3













4













5













6













7













8













9













10













11













12
















3 Nazariy malumot

Yuqoridagi malumotlar asosida matplotlib kutbxonasidan foydalanib chizmani shakillantirish dasturini tuzing har bir malumot aloxida turdagi diagrammada shakillansin.


Javoblar:

1) Pandas kutubxonasi haqida.


Rivojlanish tarixi
2008 yilda AQR Capital Managementda pandalar ishlab chiqarish boshlandi . 2009 yil oxiriga kelib u ochiq manbalar bilan ta'minlandi va bugungi kunda dunyodagi hamfikrlar hamjamiyati tomonidan faol qo'llab-quvvatlanmoqda, ular ochiq manbali pandalarni yaratishda yordam berish uchun o'zlarining qimmatli vaqtlari va kuchlarini sarflaydilar .
2015 yildan boshlab NumFOCUS pandasga homiylik qildi. Bu pandalarni dunyo miqyosidagi ochiq manbali loyiha sifatida rivojlantirish muvaffaqiyatini ta'minlashga yordam beradi .
Xronologiya

  • 2008 yil : pandalar ishlab chiqarila boshlandi

  • 2009 yil : pandalar ochiq manbaga aylandi

  • 2012 : Ma'lumotlarni tahlil qilish uchun Pythonning birinchi nashri nashr etildi

  • 2015 : NumFOCUS pandasga homiylik qildi

Kutubxonaning diqqatga sazovor joylari

  • Integratsiyalashgan indekslash, ma'lumotlarni boshqarish uchun tezkor va samarali DataFrame ob'ekti;

  • Xotira ichidagi ma'lumotlar tuzilmalari va turli formatlari o'rtasida ma'lumotlarni o'qish va yozish vositalari : CSV va matnli fayllar, Microsoft Excel, SQL ma'lumotlar bazalari va tezkor HDF5 formati;

  • Sun'iy ong uchun ma'lumotlarni moslashtirish: Ma'lumotlarni oqilona va osongina tartiblash;

  • Ma'lumotlar to'plamini moslashuvchan qayta shakllantirish va o'zgartirish, zamonaviy indeksatsiya va katta ma'lumotlar to'plamlarini kichik guruhlarga bo'lish;;

  • Jadvallar uchun ustunlar kiritish va o'chirish;

  • Ma'lumotlar to'plamida bo'linadigan va birlashtiriladigan operatsiyalarni bajarishga imkon beradigan kuchli guruhlash dvigatelidan foydalangan holda ma'lumotlarni yig'ish yoki o'zgartirish;

  • Ma'lumotlar to'plamini yuqori darajada birlashtirish;

  • Ierarxik o'qni indekslash quyi o'lchovli ma'lumotlar tarkibida yuqori o'lchovli ma'lumotlar bilan ishlashning intuitiv usulini ta'minlash;

  • Vaqt seriyasining funktsionalligi: sana diapazonini yaratish va chastotani o'zgartirish harakatlanuvchi oyna statistikasi va sana o'zgarishi. Ma'lumotlarni yo'qotmasdan, hatto domenga xos vaqt oralig'ini yarating va vaqt qatorlariga qo'shing;

  • Cython yoki C da yozilgan muhim kod yo'llari bilan ishlash uchun juda optimallashtirilgan .

  • Pandalar bilan turli xil ilmiy va tijorat sohalarida, jumladan, moliya, nevrologiya, iqtisod, statistika, reklama, veb-tahlil va boshqalarda qo'llaniladi.

Missiya
pandas Pythonda amaliy, real dunyo ma'lumotlarini tahlil qilish uchun asosiy yuqori darajadagi qurilish bloklari bo'lishga qaratilgan. Bundan tashqari, u har qanday tilda mavjud bo'lgan eng kuchli va moslashuvchan ochiq manbali ma'lumotlarni tahlil qilish / manipulyatsiya qilish vositasi bo'lishni maqsad qilib qo'ygan.

2) API-interfeys funksiyasi Pandas


API-interfeysy funktsional pandalar pozvolyayut napryamuyu singdirish sobstvennuyu funksiyalari Python, kotoraya qabul qilish va vyvodit ekzemplyary Pandas va dannyh PySpark. Kak va v slauchae s polzovatelskimi funksiyalari Pandas, API-interfeysi funksiyalari, shuningdek, Apache Arrow-dan boshqa ish va pandalar uchun ishlaydi; Odnako ukazaniya tipov Python Pandas-ning API-interfeysax funktsiyalarida yangilanishlarni amalga oshiradi.
Pandas uchun API-interfeyslar funksiyasining uch turi:

  • Sgruppirovannaya karta

  • Karta

  • Sogruppirovannaya karta

API-interfeys funksiyali pandalar siz va vnutrennyuyu mantiqiy, chto i pri vypolnenii opredelyaemoy polzovatelem funksiyalari Pandasni ishlatadi. Bu PyArrow, podderjivaemye tipidagi SQL va konfiguratsiyalar kabi xarakteristikaga ega.
Dopolnitelnye svedeniya sm. v zapisi bloga Yangi Pandas UDF va Python turidagi maslahatlar Apache Spark 3.0 versiyasini o'chirish .
Sgruppirovannaya karta
Vy preobrazuete sgruppirovanye dannye s pomoshchyu groupBy().applyInPandas()amalga oshirish uchun shablona "razdelenie-primenie-ob'edininie". Razdelenie, primenie i ob'edinenie sostoyit iz trex etapov:

  • Razdelite dannye na gruppy s pomoshchyu DataFrame.groupBy.

  • Primenite funktsiya k kajdoy gruppe. Vxodnye va vyhodnye dannye funktsiyalari amalga oshiriladi pandas.DataFrame. Vxodnye dannye soderjat vse stroki va stolbtsy uchun kajdoy gruppy.

  • Ob'edinite novyy natijalari DataFrame.

Chtoby ispolzovat groupBy().applyInPandas(), neobxodimo oredelit sleduyuschee:

  • Funksiya Python, kazhdoy guruh uchun kotoraya opredelyaet vychisleniya.

  • Ob'ekt StructTypeyoki stroka, opredelyayushchie sxemasi vyhodnyh dannyh.DataFrame

Metki stolbtsov vozvrashchaemo pandas.DataFrameob'ekta doljny sootvetstvovat imenam poley v opredelennoy vyxodnoy sxemasi, yoki ukazany v vide strok, yoki sootvetstvovat tipam dannyx poley pozitsii, yoki stroki, masalan, indekslenchis. Sm. pandalar. Kadr dannyx o tom, kak pomechat stolbtsy pri sozdanii pandas.DataFrame.
Barcha dannye uchun guruhy pamyat pered primenenieem funktsiyalari uchun zagrujayutsya. Eto mumkin privesti k isklyuchenyu nexvatki pamyati, osobenno v slachae neravnomernogo raspredeleniya razmerov guruhi. Konfiguratsiya maxRecordsPerBatch ne primenyaetsya k grupam, i vy mumkin ubeditsya, chto sgruppirovannye dannye pomeshchayutsya v dostupnuyu pamyat.
V sleduyuschem misol pokazano, qanday foydalanish uchun groupby().apply()vychitaniya srednego znacheniya iz kajdogo znacheniya v gruppe.
PythonKopirovat
df = spark.createDataFrame(
[(1, 1.0), (1, 2.0), (2, 3.0), (2, 5.0), (2, 10.0)],
("id", "v"))


def subtract_mean(pdf):
# pdf is a pandas.DataFrame
v = pdf.v
return pdf.assign(v=v - v.mean())


df.groupby("id").applyInPandas(subtract_mean, schema="id long, v double").show()
# +---+----+
# | id| v|
# +---+----+
# | 1|-0.5|
# | 1| 0.5|
# | 2|-3.0|
# | 2|-1.0|
# | 2| 4.0|
# +---+----+
Podrobnye svedeniya ob ispolzovanii sm. v razdele pyspark.sql.GroupedData.applyInPandas .
Karta
Operatsii soposstavleniya s ekzemplyarami Pandas vypolnyayutsya DataFrame.mapInPandas()preobrazovaniya iteratora pandas.DataFramev drugoy iterator pandas.DataFrame, predstavlyayushchiy tekushchiy kadr dannyh PySpark, va natija beradi vide kadra dannyh PySpark.
Bazovaya funktsiyasi prinimaet va vyvodit iterator pandas.DataFrame. U mumkin bo'ladi vyhodnye dannye proizvolnoy dliny v otlichie ot nekotoryx opredelyaemyx polzovatelem funktsional Pandas, shuningdek, Series, v qator.
Misol uchun, qanday foydalanish mumkin mapInPandas():
PythonKopirovat
df = spark.createDataFrame([(1, 21), (2, 30)], ("id", "age"))


def filter_func(iterator):
for pdf in iterator:
yield pdf[pdf.id == 1]


df.mapInPandas(filter_func, schema=df.schema).show()
# +---+---+
# | id|age|
# +---+---+
# | 1| 21|
# +---+---+
Podrobnye svedeniya ob ispolzovanii sm. v razdele pyspark.sql.DataFrame.mapInPandas .

Download 325.02 Kb.

Do'stlaringiz bilan baham:
  1   2   3   4




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