প্রযুক্তিতে উদ্ভাবন কীভাবে অ্যাপ ডেভেলপমেন্ট সেক্টরকে শক্তিশালী করছে? 1

আপনার পান্ডা ডেটাফ্রেম কিভাবে জিজ্ঞাসা করবেন

উত্স নোড: 1017694

আপনার পান্ডা ডেটাফ্রেম কিভাবে জিজ্ঞাসা করবেন

এসকিউএল-এর মতো পাইথন ফাংশনগুলির উপর একটি ডেটা সায়েন্টিস্টের দৃষ্টিভঙ্গি।


By ম্যাথু প্রজিবিলা, ফেভার ডেলিভারিতে সিনিয়র ডেটা সায়েন্টিস্ট



দ্বারা ফোটো ব্রুস হং on Unsplash [1]।

সুচিপত্র

 
 

  1. ভূমিকা
  2. একাধিক শর্ত
  3. একাধিক, নির্দিষ্ট কলামে মার্জিং
  4. সারাংশ
  5. তথ্যসূত্র

ভূমিকা

 
 
আপনি ডেটা ইঞ্জিনিয়ার/ডেটা বিশ্লেষক থেকে রূপান্তরিত হচ্ছেন বা আরও দক্ষ ডেটা বিজ্ঞানী হতে চান, আপনার ডেটাফ্রেমকে জিজ্ঞাসা করা আপনার পছন্দের নির্দিষ্ট সারিগুলি ফিরিয়ে দেওয়ার জন্য বেশ কার্যকর পদ্ধতি হিসাবে প্রমাণিত হতে পারে। এটি লক্ষ করা গুরুত্বপূর্ণ যে পান্ডাদের জন্য একটি নির্দিষ্ট ক্যোয়ারী ফাংশন রয়েছে, যথাযথভাবে নামকরণ করা হয়েছে, query. যাইহোক, আমি পরিবর্তে অন্যান্য উপায় নিয়ে আলোচনা করব যা আপনি ক্যোয়ারী, ফিল্টারিং এবং আপনার ডেটা মার্জ করতে পারেন। আমরা সাধারণ পরিস্থিতি বা প্রশ্ন উপস্থাপন করব যা আপনি আপনার ডেটাতে জিজ্ঞাসা করবেন এবং SQL এর পরিবর্তে, আমরা পাইথনের সাথে এটি করব। নীচের অনুচ্ছেদে, আমি পাইথন প্রোগ্রামিং ভাষার সাথে আপনার পান্ডাস ডেটাফ্রেমের জন্য সারিগুলি অনুসন্ধান করার কিছু সহজ উপায়ের রূপরেখা দেব।

একাধিক শর্ত

 
 



নমুনা তথ্য. লেখক থেকে স্ক্রিনশট [2]।

 

ডেটা বিজ্ঞানী বা ডেটা বিশ্লেষক হিসাবে, আমরা ডেটার নির্দিষ্ট সারি ফেরত দিতে চাই। এই পরিস্থিতিগুলির মধ্যে একটি হল যেখানে আপনি একাধিক শর্ত প্রয়োগ করতে চান, সমস্ত কোডের একই লাইনে। আমার উদাহরণ প্রদর্শন করার জন্য, আমি প্রথম এবং শেষ নামের কিছু জাল নমুনা ডেটা তৈরি করেছি, সেইসাথে তাদের নিজ নিজ লিঙ্গ এবং জন্মতারিখ। এই তথ্য উপরে স্ক্রিনশট প্রদর্শিত হয়.

উদাহরণ একাধিক শর্ত মূলত একটি নির্দিষ্ট প্রশ্নের উত্তর দেবে, ঠিক যেমন আপনি SQL ব্যবহার করেন। প্রশ্ন হল, আমাদের ডেটার কত শতাংশ পুরুষ লিঙ্গ OR একজন ব্যক্তি যিনি 2010 থেকে 2021 সালের মধ্যে জন্মগ্রহণ করেছিলেন।

এখানে কোড যা সেই প্রশ্নের সমাধান করবে (এই প্রশ্নের উত্তর দেওয়ার কয়েকটি উপায় আছে, কিন্তু এখানে এটি করার আমার নির্দিষ্ট উপায়):

print(“Percent of data who are Males OR were born between 2010 and 2021:”, 100*round(df[(df[‘Gender’] == ‘M’) | (df[‘Birthdate’] >= ‘2010–01–01’) & (df[‘Birthdate’] <= ‘2021–01–01’)][‘Gender’].count()/df.shape [0],4), “%”)

এই কোডটি আরও ভালভাবে কল্পনা করার জন্য, আমি আউটপুট/ফলাফল সহ উপরে থেকে একই কোডের এই স্ক্রিনশটটিও অন্তর্ভুক্ত করেছি। আপনি মোট সারিগুলির মধ্যে ভগ্নাংশ বা সারির শতাংশ পাওয়ার পরিবর্তে প্রকৃত সারিগুলি ফেরাতে এই শর্তগুলি প্রয়োগ করতে পারেন।



শর্ত কোড। লেখক দ্বারা স্ক্রিনশট [3].

 

আমরা সঞ্চালিত আদেশের ক্রম এখানে:

  • পুরুষের সাথে সারি ফেরত দিন Gender
  • অন্তর্ভুক্ত OR ক্রিয়া |
  • এর সারি ফেরত দিন Birthdate > 2010 এবং 2021
  • সেগুলিকে একত্রিত করুন এবং তারপরে সারিগুলির মোট পরিমাণ দ্বারা ভাগ করুন

আপনি দেখতে পাচ্ছেন, এই কোডটি আপনি এসকিউএল-এ দেখতে পাবেন এমন কিছুর মতো। আমি ব্যক্তিগতভাবে মনে করি পান্ডাতে এটি সহজ কারণ এটি কম কোড হতে পারে, পাশাপাশি সমস্ত কোডকে একটি সহজ স্থানে দৃশ্যমানভাবে দেখতে সক্ষম হয়, উপরে এবং নীচে স্ক্রোল না করে (কিন্তু এই বিন্যাস শুধু আমার পছন্দ).

একাধিক, নির্দিষ্ট কলামে মার্জিং

 
 



একত্রিত ডেটাফ্রেম ফলাফল। লেখক দ্বারা স্ক্রিনশট [4].

 

আমরা সম্ভবত অন্যান্য টিউটোরিয়ালগুলিতে ডেটাফ্রেমগুলিকে কীভাবে একত্রিত করতে হয় তা দেখেছি, তাই আমি একটি অনন্য পদ্ধতি যুক্ত করতে চেয়েছিলাম যা আমি সত্যিই সেখানে দেখিনি, যা একাধিক, নির্দিষ্ট কলামে একত্রিত হচ্ছে। এই পরিস্থিতিতে, আমরা দুটি ডেটাফ্রেমে যোগ দিতে চাই যেখানে দুটি ক্ষেত্র তাদের মধ্যে ভাগ করা হয়। আপনি বলতে পারেন যে যদি আরও বেশি কলাম থাকে তবে এই পদ্ধতিটি আরও কার্যকর হতে পারে।

আমাদের প্রথম ডেটাফ্রেম আছে, যা হল df, তারপর আমরা আমাদের কলামগুলিকে দ্বিতীয় ডেটাফ্রেমে মার্জ করছি, df2। আমাদের প্রত্যাশিত ফলাফল অর্জন করার জন্য এখানে সেই কোডটি রয়েছে:

merged_df = df.merge(df2, how=’inner’, left_on=cols, right_on=cols )

এই মার্জিং এবং কোডটিকে আরও ভালভাবে কল্পনা করতে, আমি নীচের স্ক্রিনশটটি উপস্থাপন করেছি। আপনি দ্বিতীয় ডেটাফ্রেম নীচের মত দেখায় কি দেখতে, সঙ্গে First এবং Last নাম, যেমন তারা প্রথম ডেটাফ্রেমে আছে, কিন্তু একটি নতুন কলাম সহ, Numeric. তারপর, আমাদের কাছে নির্দিষ্ট কলাম রয়েছে যা আমরা কলামগুলি ফেরানোর সময় একত্রিত করতে চেয়েছিলাম GenderBirthdate, এবং নতুন Numeric পাশাপাশি কলাম। কলামগুলি কলামগুলির একটি তালিকা, যার নাম দেওয়া হয়েছে cols.



ডেটাফ্রেম একত্রিত করা। লেখক দ্বারা স্ক্রিনশট [5].

 

আপনি দেখতে পাচ্ছেন, ডেটাফ্রেমগুলিকে একত্রিত করার এই উপায়টি একই ফলাফল অর্জন করার একটি সহজ উপায় যা আপনি একটি SQL কোয়েরি থেকে পাবেন।

সারাংশ

 
 
এই টিউটোরিয়ালে, আমরা দুটি সাধারণ প্রশ্ন বা কোয়েরি দেখেছি যা আপনি এসকিউএল-এ সম্পাদন করবেন, কিন্তু পরিবর্তে, পাইথনে পান্ডাস ডেটাফ্রেমের সাহায্যে সেগুলি সম্পাদন করেছেন।

সংক্ষেপে বলতে গেলে, আমরা যে দুটি পরিস্থিতিতে কাজ করেছি তা এখানে রয়েছে:

  1. একাধিক শর্ত থেকে মোট ডেটাসেটের মধ্যে সারির শতাংশ ফেরত দেওয়া হচ্ছে
  2. একটি নতুন কলামের সাথে একটি চূড়ান্ত ডেটাফ্রেম ফেরত দিতে একাধিক, নির্দিষ্ট কলামে মার্জ করা

আমি আশা করি আপনি আমার নিবন্ধটি আকর্ষণীয় এবং দরকারী উভয়ই পেয়েছেন। আপনি যদি এই পদ্ধতিগুলির সাথে একমত বা অসম্মত হন তবে দয়া করে নীচে মন্তব্য করুন। কেন অথবা কেন নয়? এগুলি অবশ্যই আরও স্পষ্ট করা যেতে পারে, তবে আমি আশা করি যে আপনি SQL এর পরিবর্তে পান্ডা এবং পাইথন ব্যবহার করতে পারেন এমন কিছু উপায়ে আমি কিছু আলোকপাত করতে সক্ষম হয়েছি। পড়ার জন্য আপনাকে ধন্যবাদ!

অনুগ্রহ করে নির্দ্বিধায় আমার প্রোফাইল চেক আউট করুন, ম্যাট প্রজিবিলা, এবং অন্যান্য নিবন্ধ, সেইসাথে LinkedIn-এ আমার সাথে যোগাযোগ করুন।

আমি এই কোম্পানির সাথে সংযুক্ত নই।

 
তথ্যসূত্র

[১] ছবি ব্রুস হং on Unsplash, (2018)

[২] M. Przybyla, নমুনা ডেটা স্ক্রিনশট, (2)

[৩] M. Przybyla, শর্ত কোড স্ক্রিনশট, (3)

[৪] M. Przybyla, মার্জড ডেটাফ্রেম ফলাফলের স্ক্রিনশট, (4)

[৫] M. Przybyla, একত্রিত করা ডেটাফ্রেম স্ক্রিনশট, (5)

 
বায়ো: ম্যাথু প্রজিবিলা ফেভার ডেলিভারির সিনিয়র ডেটা সায়েন্টিস্ট এবং একজন ফ্রিল্যান্স টেকনিক্যাল লেখক, বিশেষ করে ডেটা সায়েন্সে।

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

সম্পর্কিত:



শীর্ষ গল্পগুলি গত 30 দিন
সবচেয়ে জনপ্রিয়
  1. 6 সালে শীর্ষ 2021 ডেটা সায়েন্স অনলাইন কোর্স
  2. ডেটা সায়েন্টিস্ট এবং এমএল ইঞ্জিনিয়াররা বিলাসবহুল কর্মচারী
  3. গুগলের গবেষণা পরিচালক থেকে ডেটা সায়েন্স শেখার পরামর্শ
  4. গিটহাব কপিলট ওপেন সোর্স বিকল্প
  5. গভীর শিক্ষার জ্যামিতিক ভিত্তি
সর্বাধিক ভাগ করা
  1. কেন এবং কীভাবে আপনার "উত্পাদনশীল ডেটা সায়েন্স" শিখতে হবে?
  2. শুধু গভীর শিক্ষার জন্য নয়: কিভাবে GPUs ডেটা সায়েন্স এবং ডেটা অ্যানালিটিক্সকে ত্বরান্বিত করে
  3. টেরাফর্মের সাহায্যে 5 মিনিটের মধ্যে একটি আধুনিক ডেটা স্ট্যাক বুটস্ট্র্যাপ করুন
  4. RAPIDS সহ GPU- চালিত ডেটা সায়েন্স (গভীর শিক্ষা নয়)
  5. 90 দিনের মধ্যে একটি বিশ্লেষণ প্রকৌশলী হন

সূত্র: https://www.kdnuggets.com/2021/08/query-pandas-dataframe.html

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

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