পাইপোলারগুলির সাথে পান্ডাসকে 3 টাইমস দ্রুততর করুন

উত্স নোড: 1854103

পাইপোলারগুলির সাথে পান্ডাসকে 3 টাইমস দ্রুততর করুন

PyPolars লাইব্রেরি ব্যবহার করে কীভাবে আপনার পান্ডাস ওয়ার্কফ্লোকে দ্রুততর করবেন তা শিখুন।


By সত্যম কুমার, মেশিন লার্নিং উত্সাহী এবং প্রোগ্রামার



দ্বারা ফোটো টিম গউ on Unsplash

 

ডাটা নিয়ে খেলার জন্য ডাটা বিজ্ঞানীদের মধ্যে পান্ডাস হল সবচেয়ে গুরুত্বপূর্ণ পাইথন প্যাকেজগুলির মধ্যে একটি। পান্ডাস লাইব্রেরি বেশিরভাগ ডেটা এক্সপ্লোরেশন এবং ভিজ্যুয়ালাইজেশনের জন্য ব্যবহৃত হয় কারণ এটি প্রচুর ইনবিল্ট ফাংশন সহ আসে। পান্ডাগুলি বড় আকারের ডেটাসেটগুলি পরিচালনা করতে ব্যর্থ হয় কারণ এটি CPU এর সমস্ত কোর জুড়ে এর প্রক্রিয়াকে স্কেল বা বিতরণ করে না।

গণনার গতি বাড়ানোর জন্য, কেউ CPU-এর সমস্ত কোর ব্যবহার করতে পারে এবং কর্মপ্রবাহের গতি বাড়াতে পারে। Dask, Vaex, Modin, Pandarallel, PyPolars, ইত্যাদি সহ বিভিন্ন ওপেন-সোর্স লাইব্রেরি রয়েছে যা CPU-এর একাধিক কোর জুড়ে গণনাগুলিকে সমান্তরাল করে। এই নিবন্ধে, আমরা পাইপোলার লাইব্রেরির বাস্তবায়ন এবং ব্যবহার নিয়ে আলোচনা করব এবং পান্ডাস লাইব্রেরির সাথে এর কার্যকারিতা তুলনা করব।

পাইপোলারস কি?

 
PyPolars হল একটি ওপেন সোর্স পাইথন ডেটা ফ্রেম লাইব্রেরি যা পান্ডাসের মতো। PyPolars CPU-এর সমস্ত উপলব্ধ কোর ব্যবহার করে এবং তাই পান্ডাসের তুলনায় দ্রুত গণনা করে। পাইপোলারের একটি এপিআই রয়েছে পান্ডাসের মতো। এটি Python wrappers সঙ্গে মরিচা লেখা হয়.


আদর্শভাবে, পাইপোলার ব্যবহার করা হয় যখন ডাটা পান্ডাদের জন্য খুব বড় এবং স্পার্কের জন্য খুব ছোট


কিভাবে PyPolars কাজ করে?

 
PyPolars লাইব্রেরিতে দুটি API আছে, একটি হল Eager API এবং অন্যটি Lazy API। Eager API অনেকটা পান্ডাদের মতই, এবং পান্ডাদের মতই মৃত্যুদন্ড সম্পন্ন হওয়ার পরই ফলাফল পাওয়া যায়। ল্যাজি এপিআই স্পার্কের মতোই, যেখানে একটি ক্যোয়ারী কার্যকর করার পরে একটি মানচিত্র বা পরিকল্পনা তৈরি করা হয়। তারপরে সিপিইউ এর সমস্ত কোর জুড়ে সমান্তরালভাবে মৃত্যুদন্ড কার্যকর করা হয়।



(লেখকের ছবি), পাইপোলারস এপিআই

 

পাইপোলারগুলি মূলত পোলার লাইব্রেরিতে পাইথন বাইন্ডিং হিসাবে। PyPolars লাইব্রেরির সেরা অংশ হল পান্ডাসের সাথে এর API মিল, যা ডেভেলপারদের জন্য সহজ করে তোলে।

স্থাপন:

 
PyPolars নিম্নলিখিত কমান্ড ব্যবহার করে PyPl থেকে ইনস্টল করা যেতে পারে:

pip install py-polars


এবং ব্যবহার করে লাইব্রেরি আমদানি করুন

import pypolars as pl


বেঞ্চমার্ক সময় সীমাবদ্ধতা:


প্রদর্শনের জন্য, আমি 6.4 মিলিয়ন উদাহরণ সহ একটি বড় আকারের ডেটাসেট (~25Gb) ব্যবহার করেছি।




(লেখকের ছবি), পান্ডা এবং পাই-পোলারের মৌলিক অপারেশনের জন্য বেঞ্চমার্ক টাইম নম্বর

 

Pandas এবং PyPolars লাইব্রেরি ব্যবহার করে কিছু মৌলিক ক্রিয়াকলাপের জন্য উপরের বেঞ্চমার্ক সময় সংখ্যার জন্য, আমরা লক্ষ্য করতে পারি যে PyPolars প্রায় 2x থেকে 3x দ্রুততর পান্ডাদের থেকে।

এখন আমরা জানি যে পাইপোলারের একটি এপিআই রয়েছে পান্ডাসের মতো, কিন্তু তবুও, এটি পান্ডার সমস্ত ফাংশন কভার করে না। উদাহরণস্বরূপ, আমাদের নেই .describe() PyPolars ফাংশন, পরিবর্তে, আমরা ব্যবহার করতে পারেন df_pypolars.to_pandas().describe()

ব্যবহার:

 

(লেখকের কোড)

উপসংহার:

 
এই নিবন্ধে, আমরা PyPolars লাইব্রেরির একটি ছোট ভূমিকা কভার করেছি, এর বাস্তবায়ন, ব্যবহার এবং কিছু মৌলিক ক্রিয়াকলাপের জন্য পান্ডাসের সাথে এর বেঞ্চমার্ক সময়ের সংখ্যা তুলনা করা সহ। উল্লেখ্য যে PyPolars কাজ করে অনেকটা পান্ডাদের মতই, এবং PyPolars একটি মেমরি-দক্ষ লাইব্রেরি কারণ এটি দ্বারা সমর্থিত মেমরি অপরিবর্তনীয়।

এক মাধ্যমে যেতে পারেন ডকুমেন্টেশন লাইব্রেরি সম্পর্কে বিস্তারিত বোঝার জন্য। অন্যান্য বিভিন্ন ওপেন-সোর্স লাইব্রেরি রয়েছে যা পান্ডা অপারেশনগুলিকে সমান্তরাল করতে পারে এবং প্রক্রিয়াটিকে দ্রুততর করতে পারে। পর এটা নীচে উল্লিখিত নিবন্ধ এরকম 4টি লাইব্রেরি জানুন:

4টি লাইব্রেরি যা বিদ্যমান পান্ডাস ইকোসিস্টেমের সমান্তরাল করতে পারে
এই ফ্রেমওয়ার্কগুলি ব্যবহার করে সমান্তরাল প্রক্রিয়াকরণের মাধ্যমে পাইথন ওয়ার্কলোড বিতরণ করুন

 
তথ্যসূত্র:

[১] পোলার ডকুমেন্টেশন এবং গিটহাব রিপোজিটরি: https://github.com/ritchie46/polars

 
পড়ার জন্য আপনাকে ধন্যবাদ

 
বায়ো: সত্যম কুমার একজন মেশিন লার্নিং উত্সাহী এবং প্রোগ্রামার। সত্যম লিখেছেন ডেটা সায়েন্স সম্পর্কে, এবং এআই-এর একজন শীর্ষ লেখক। তিনি এমন একটি প্রতিষ্ঠানের সাথে একটি চ্যালেঞ্জিং ক্যারিয়ার খুঁজছেন যা তার প্রযুক্তিগত দক্ষতা এবং ক্ষমতাকে পুঁজি করার সুযোগ প্রদান করে।

মূল। অনুমতি নিয়ে পোস্ট করা।

সম্পর্কিত:



শীর্ষ গল্পগুলি গত 30 দিন

সবচেয়ে জনপ্রিয়
  1. ডেটা সায়েন্টিস্ট, ডেটা ইঞ্জিনিয়ার এবং অন্যান্য ডেটা কেরিয়ার, ব্যাখ্যা করা হয়েছে
  2. ভেক্স: পান্ডাস তবে 1000x দ্রুত
  3. 2021 সালে আপনার পড়া উচিত পড়া ডেটা বিজ্ঞানের বই
  4. এসকিউএল-তে ডেটা প্রস্তুতি, ঠকানো শীট সহ!
  5. চার্টিকুলেটর: মাইক্রোসফ্ট রিসার্চ একটি গেম-ডেটিং ভিজ্যুয়ালাইজেশন প্ল্যাটফর্মকে ওপেন-সোর্স করেছে
সর্বাধিক ভাগ করা
  1. কীভাবে ডেটা সায়েন্টিস্ট হবেন তার গাইড (স্টেপ বাই স্টেপ অ্যাপ্রোচ)
  2. ডেটা সায়েন্টিস্ট, ডেটা ইঞ্জিনিয়ার এবং অন্যান্য ডেটা কেরিয়ার, ব্যাখ্যা করা হয়েছে
  3. আপনার মেশিন লার্নিং মডেলটি যদি ওভারট্রেইন হয় তবে কীভাবে তা নির্ধারণ করবেন
  4. ডিপমাইন্ড মেশিন লার্নিংয়ের অন্যতম গুরুত্বপূর্ণ অ্যালগরিদম পুনরায় কল্পনা করতে চায়
  5. ডেটা সায়েন্স এবং মেশিন লার্নিংয়ের জন্য প্রয়োজনীয় লিনিয়ার বীজগণিত

সূত্র: https://www.kdnuggets.com/2021/05/pandas-faster-pypolars.html

সময় স্ট্যাম্প:

থেকে আরো কেডনুগেটস