Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

Python Pandas में लेक्सिकोग्राफिकल स्लाइसिंग का उपयोग करके डेटा का सबसेट कैसे चुनें?


परिचय

Pandas में इंडेक्स पोजीशन या इंडेक्स लेबल का उपयोग करके डेटा के सबसेट को चुनने की दोहरी क्षमता होती है। इस पोस्ट में, मैं आपको दिखाऊंगा कि "लेक्सिकोग्राफिकल स्लाइसिंग का उपयोग करके डेटा का सबसेट कैसे चुनें"।

Google डेटासेट से भरा पड़ा है। Kaggle.com पर मूवीज डेटासेट खोजें। इस पोस्ट में Kaggle से मूवीज डेटासेट का उपयोग किया गया है।

कैसे करें

  • केवल इस उदाहरण के लिए आवश्यक कॉलम के साथ मूवीज डेटासेट आयात करें।

import pandas as pd
import numpy as np

movies = pd.read_csv("https://raw.githubusercontent.com/sasankac/TestDataSet/master/movies_data.csv",
                     index_col="title",
                     usecols=["title", "budget", "vote_average", "vote_count"])

movies.sample(n=5)
budgetvote_averagevote_count
title
Little Voice06.661
Grown Ups 2800000005.81155
The Best Years of Our Lives21000007.6143
Tusk28000005.1366
Operation Chromite05.829
  • मैं हमेशा इंडेक्स को सॉर्ट करने की सलाह देता हूं, खासकर यदि इंडेक्स स्ट्रिंग्स से बना हो। आप अंतर देखेंगे यदि आप एक विशाल डेटासेट के साथ काम कर रहे हैं जब आपका इंडेक्स सॉर्ट किया गया हो।

यदि मैं इंडेक्स सॉर्ट न करूं तो क्या होगा?

कोई समस्या नहीं, आपका कोड हमेशा के लिए चलेगा। मजाक कर रहा हूं, खैर यदि इंडेक्स लेबल अनसॉर्टेड हैं तो Pandas को आपके क्वेरी से मिलान करने के लिए सभी लेबल को एक-एक करके पार करना होगा। बस ऑक्सफोर्ड डिक्शनरी की कल्पना करें बिना इंडेक्स पेज के, आप क्या करेंगे? सॉर्ट किए गए इंडेक्स के साथ आप जल्दी से उस लेबल पर जा सकते हैं जिसे आप निकालना चाहते हैं, Pandas के साथ भी ऐसा ही है।

आइए पहले जांचें कि हमारा इंडेक्स सॉर्टेड है या नहीं।

# जांचें कि इंडेक्स सॉर्टेड है या नहीं?
movies.index.is_monotonic
False
  • स्पष्ट रूप से, इंडेक्स अनसॉर्टेड है। हम 'A' से शुरू होने वाली फिल्मों को चुनने का प्रयास करेंगे। यह लिखने जैसा है:

select * from movies where title like 'A%'
movies.loc["Aa":"Bb"]
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
...
ValueError: index must be monotonic increasing or decreasing
...
KeyError: 'Aa'
  • इंडेक्स को आरोही क्रम में सॉर्ट करें और लेक्सिकोग्राफिकल स्लाइसिंग के लिए सॉर्टिंग का लाभ लेने के लिए उसी कमांड को फिर से आज़माएं।

movies.sort_index(inplace=True)
movies.index.is_monotonic
# Output: True
  • अब हमारा डेटा सेट हो गया है और लेक्सिकोग्राफिकल स्लाइसिंग के लिए तैयार है। आइए अब अक्षर A से लेकर अक्षर B तक शुरू होने वाले सभी मूवी टाइटल चुनें।

budgetvote_averagevote_count
title
Abandon250000004.645
Abandoned05.827
Abduction350000005.6961
Aberdeen07.06
About Last Night125000006.0210
............
Battle for the Planet of the Apes17000005.5215
Battle of the Year200000005.988
Battle: Los Angeles700000005.51448
Battlefield Earth440000003.0255
Battleship2090000005.52114

292 rows × 3 columns

True

titlebudgetvote_averagevote_count
Æon Flux620000005.4703
xXx: State of the Union600000004.7549
xXx700000005.81424
eXistenZ150000006.7475
[REC]²56000006.4489

budget vote_average vote_count title

यह एक नो-ब्रेनर है कि खाली DataFrame दिखाई देगा क्योंकि डेटा रिवर्स ऑर्डर में सॉर्टेड है। आइए अक्षरों को उल्टा करें और फिर से चलाएं।

titlebudgetvote_averagevote_count
B-Girl05.57
Ayurveda: Art of Being3000005.53
Away We Go170000006.7189
Awake860000006.3395
Avengers: Age of Ultron2800000007.36767
............
About Last Night125000006.0210
Aberdeen07.06
Abduction350000005.6961
Abandoned05.827
Abandon250000004.645

228 rows × 3 columns

  1. - Python Pandas - इंडेक्स में डेटा का प्रतिनिधित्व करने वाली सरणी लौटाएं

    परिचय पैंडास इंडेक्स में डेटा का प्रतिनिधित्व करने वाली नम्पाई सरणी (numpy array) प्राप्त करने के लिए index.values प्रॉपर्टी का उपयोग करें। आवश्यक लाइब्रेरी आयात करें import pandas as pd इंडेक्स बनाएं index = pd.Index([Car, Bike, Truck, Ship, Airplane]) इंडेक्स प्रदर्शित करें print(पैंडास इंडेक्स

  1. - पायथन - जांचें कि पैंडास इंडेक्स कैटेगोरिकल डेटा रखता है या नहीं

    जांचने के लिए कि पैंडास इंडेक्स कैटेगोरिकल डेटा रखता है या नहीं, पैंडास में index.is_categorical() मेथड का उपयोग करें। सबसे पहले आवश्यक लाइब्रेरी इम्पोर्ट करें: import pandas as pd astype() मेथड का उपयोग करके टाइप को category के रूप में सेट करके पैंडास इंडेक्स बनाएं: index = pd.Index([Electronics,Ac

  1. पायथन - पैंडास DataFrame के सबसेट का चयन कैसे करें पायथन - पैंडास DataFrame के सबसेट का चयन कैसे करें

    मान लीजिए हमारी CSV फ़ाइल की सामग्री Microsoft Excel में निम्नलिखित है:सबसे पहले, CSV फ़ाइल से डेटा पैंडास DataFrame में लोड करें:dataFrame = pd.read_csv(C:\\Users\\amit_\\Desktop\\SalesData.csv)सबसेट का चयन करने के लिए वर्गाकार ब्रैकेट का उपयोग करें। ब्रैकेट में कॉलम का उल्लेख करें और पूरे डेटासेट