O'qituvch F. I. Sh
Download 325.02 Kb.
|
3- joriy Fully
- Bu sahifa navigatsiya:
- 1) Pandas kutubxonasi haqida.
- 2) API-interfeys funksiyasi Pandas
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
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 PandasAPI-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: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling