Power BI में Python का उपयोग क्यों करें?
Power BI के साथ Python का उपयोग करने से डेटा के साथ काम करने के लिए संभावनाओं का एक नया आयाम खुलता है। Python, Power BI को लगभग हर काम करने में सक्षम एक प्लेटफ़ॉर्म में बदल देता है।
यहाँ कुछ उदाहरण दिए गए हैं कि Power BI में Python से किस प्रकार के कार्य किए जा सकते हैं:
- डेटा क्लीनिंग - आप ऐसी Python स्क्रिप्ट लिख सकते हैं जो अक्सर दोहराए जाने वाले डेटा क्लीनिंग कार्यों को स्वचालित करें, जैसे मिसिंग वैल्यू हटाना या दिनांक फ़ॉर्मेट सुधारना।
- डेटा ट्रांसफॉर्मेशन - ऐसे डेटासेट के लिए Python स्क्रिप्ट उपयोगी हैं जिन्हें इम्पोर्ट करने से पहले व्यापक डेटा ट्रांसफॉर्मेशन की आवश्यकता होती है, जिन्हें Power Query Editor में करना धीमा या मुश्किल हो सकता है।
- मशीन लर्निंग - अपने डेटा को प्रेडिक्टिव एनालिटिक्स (जैसे रिग्रेशन या नेचुरल लैंग्वेज प्रोसेसिंग) या अनसुपरवाइज़्ड मशीन लर्निंग जैसे क्लस्टर एनालिसिस से समृद्ध करना।
- मिसिंग डेटा का प्रबंधन - Python आपको मिसिंग डेटा को संभालने के अधिक विकल्प देता है, जैसे मशीन लर्निंग मॉडलों का उपयोग।
- एडवांस्ड विज़ुअलाइज़ेशन - Python का उपयोग करते समय आप अपनी रिपोर्ट में किसी भी प्रकार का विज़ुअलाइज़ेशन जोड़ सकते हैं। Power BI में कस्टम विज़ुअल डाउनलोड किए बिना ही अत्यधिक जटिल या कस्टमाइज़्ड विज़ुअल जोड़ें।
- कनेक्टिविटी - Python आपको लगभग किसी भी डेटा स्रोत से कनेक्ट करने की क्षमता देता है, भले ही Power BI उसे अपने बिल्ट-इन कनेक्शनों में सपोर्ट न करता हो।
Power BI में Python उपयोग करने की सीमाएँ क्या हैं?
Power BI के साथ Python का उपयोग करते समय कुछ सीमाएँ हैं जिन्हें स्क्रिप्ट लिखते समय ध्यान में रखना चाहिए:
- Python से जोड़े गए डेटा स्रोतों को पब्लिक पर सेट करना होगा।
- केवल Pandas DataFrame को ही Python के माध्यम से Power BI में इम्पोर्ट किया जा सकता है।
- 30 मिनट से अधिक चलने वाली स्क्रिप्ट का टाइमआउट हो जाएगा, और 5 मिनट से अधिक चलने वाले Python विज़ुअल्स का भी टाइमआउट हो जाएगा।
- Power BI Service में सपोर्टेड Python लाइब्रेरीज़ की संख्या सीमित है (इस पर हम अगले सेक्शन में विस्तार से बताएँगे)।
- Python उपयोग करने वाली रिपोर्ट्स को Power BI Service में सिर्फ पर्सनल गेटवे से ही रिफ्रेश किया जा सकता है (एंटरप्राइज़ या स्टैंडर्ड गेटवे सपोर्टेड नहीं है)।
- Python विज़ुअल्स क्रॉस-फिल्टरिंग सपोर्ट नहीं करते। इसका मतलब है कि Python विज़ुअल में किसी एलिमेंट का चयन करने से अन्य विज़ुअल्स उस चयन के आधार पर फ़िल्टर नहीं होंगे, जिससे Power BI रिपोर्ट में कुछ हद तक इंटरेक्टिविटी कम हो जाती है।
जैसा उल्लेख किया गया है, Power BI Service केवल सीमित संख्या में Python लाइब्रेरीज़ को सपोर्ट करता है। ये प्रतिबंध Power BI Desktop में रिपोर्ट बनाते समय लागू नहीं होते, इसलिए यदि आप अपनी रिपोर्ट्स को Power BI Service पर प्रकाशित करना चाहते हैं, तो उपयोग की जा रही लाइब्रेरीज़ पर नज़र रखें।
साथ ही ध्यान रखें कि Power BI Service वर्तमान में Python 3.7.7 रनटाइम को सपोर्ट करता है। यदि आप Python की किसी पहले की वर्ज़न में अपनी स्क्रिप्ट लिख रहे हैं, तो आपका कोड सही तरीके से न चल पाए।
Power BI Service इन लाइब्रेरीज़ को सपोर्ट करता है:
- Matplotlib
- NumPy
- Pandas
- Scikit-learn
- Scipy
- Seaborn
- Statsmodels
- XGBoost
ध्यान देने योग्य बात यह है कि Power BI और Python के बीच इंटीग्रेशन के लिए कम से कम दो Python लाइब्रेरीज़ इंस्टॉल होनी चाहिए – Pandas और Matplotlib।
Power BI में Python कैसे सेट अप करें
Power BI में कोई भी स्क्रिप्ट लिखने से पहले, आपको Python वेबसाइट से Python का नवीनतम संस्करण इंस्टॉल करना होगा।
Power BI डोक्यूमेंटेशन यह सलाह देता है कि आप Anaconda जैसे एनवायरनमेंट मैनेजर का उपयोग करने से बचें क्योंकि यह स्क्रिप्ट चलाने में कुछ समस्याएँ पैदा कर सकता है। यदि आप Anaconda में कस्टम एनवायरनमेंट का उपयोग कर रहे हैं, तो एक वर्कअराउंड यह है कि कमांड लाइन से उस एनवायरनमेंट को सक्रिय करें और फिर वहीं से Power BI Desktop खोलें।
हालाँकि, यदि आप प्रोग्रामिंग के इन पहलुओं से कम परिचित हैं, तो कस्टम एनवायरनमेंट का उपयोग किए बिना सीधे वेबसाइट से Python डाउनलोड करके Power BI की सिफारिश पर टिके रहना आसान है।
Python इंस्टॉल करने के बाद, आपको Power BI Desktop में सही Python फाइल पाथ निर्दिष्ट करना होगा। रिबन से ‘File’ चुनें, फिर ‘Options and settings’ पर जाएँ, और ‘Options’ चुनें। ग्लोबल विकल्पों की सूची में ‘Python scripting’ देखें। यहीं पर आपको Python डिस्ट्रीब्यूशन वाली डायरेक्टरी चुननी होगी।
ड्रॉप-डाउन चयन में आप अपने कंप्यूटर पर इंस्टॉल सभी Python डिस्ट्रीब्यूशन्स देख पाएँगे। यदि आपको फाइल पाथ मैन्युअली टाइप करना पड़े, तो ध्यान दें कि यहाँ केवल एब्सोल्यूट फाइल पाथ सपोर्टेड हैं; आप Power BI रिपोर्ट के लोकेशन से रिलेटिव फाइल पाथ दर्ज नहीं कर सकते।

Power BI में Python स्क्रिप्ट का उपयोग करने के कुछ तरीके हैं:
- नए डेटा को इम्पोर्ट करने के लिए डेटा स्रोत के रूप में।
- Power Query Editor में किसी मौजूदा डेटा स्रोत को समृद्ध करने के लिए।
- Power BI रिपोर्ट कैनवस पर डेटा को विज़ुअलाइज़ करने के लिए।
इस ट्यूटोरियल के बाकी हिस्से में हम Python को डेटा स्रोत के रूप में उपयोग करने और किसी मौजूदा डेटा स्रोत को समृद्ध करने के तरीके को कवर करेंगे।
Power BI में Python को डेटा स्रोत के रूप में उपयोग करना
रिबन के Home टैब में, ‘Get data’ चुनें ताकि डेटा कनेक्शनों की पूरी सूची दिखे। ‘Other’ श्रेणी चुनें और सूची में ‘Python script’ ढूँढें। यह आपको एक Python स्क्रिप्ट लिखकर डेटासेट इम्पोर्ट करने की अनुमति देगा। मुझे यह विशेष रूप से तब उपयोगी लगता है जब ऐसे डेटा स्रोत से कनेक्ट करना हो जिसे Power BI के कनेक्शनों की सूची में सपोर्ट नहीं किया गया है, या ऐसा डेटासेट जिसे इम्पोर्ट करने से पहले व्यापक डेटा ट्रांसफॉर्मेशन की आवश्यकता हो (जैसे किसी API से)।

एक डायलॉग बॉक्स खुलेगा जहाँ आप अपना Python कोड दर्ज कर सकते हैं। इस उदाहरण में, हम Scikit-Learn लाइब्रेरी का उपयोग करके Iris डेटासेट लोड करेंगे, जिसे हम अगले सेक्शन में भी इस्तेमाल करेंगे। याद रखें कि Power BI केवल Pandas DataFrame को इम्पोर्ट करने की अनुमति देता है, इसलिए हमें पहले ‘pd.DataFrame’ का उपयोग करके डेटासेट को कन्वर्ट करना होगा।

अगली विंडो में, ‘df’ नाम की टेबल चुनें जिसमें डेटा है। अब आप इस डेटासेट को किसी भी अन्य डेटा स्रोत की तरह डेटा मॉडल में लोड कर सकते हैं।

Python का उपयोग करके Power BI में K-Means क्लस्टरिंग
K-Means क्लस्टरिंग एक अनसुपरवाइज़्ड मशीन लर्निंग तकनीक है जो आपको एक-दूसरे से मिलते-जुलते डेटा पॉइंट्स के समूह खोजने देती है – इन्हें क्लस्टर कहा जाता है। यह तकनीक विशेष रूप से मार्केटिंग और कस्टमर सर्विस में व्यवसायों के लिए अपने ग्राहकों को बेहतर समझने में उपयोगी है।
Power BI में बिना Python के भी आपके डेटा पर क्लस्टर एनालिसिस करने की क्षमता है। हालाँकि, इसमें कुछ पाबंदियाँ हैं, जैसे यह डेटा को कितने क्लस्टरों में बाँटना है, यह खुद तय करता है और आपको इसे बदलने की अनुमति नहीं देता। ऐसी स्थिति में Python एक बेहतरीन समाधान है, क्योंकि अब आपके पास अपनी आवश्यकताओं के अनुसार स्क्रिप्ट लिखने की लचीलापन होता है।
Power Query Editor के भीतर, रिबन में Transform टैब चुनें और फिर ‘Run Python Script’ चुनें। इससे लगभग वही डायलॉग बॉक्स खुलेगा जो हमने डेटासेट इम्पोर्ट करते समय देखा था, बस यहाँ हमारे मौजूदा डेटासेट के लिए ‘dataset’ नाम का एक प्लेसहोल्डर मौजूद है।

‘OK’ चुनने पर एक संकुचित टेबल इम्पोर्ट होगी। अब आपको Value कॉलम को एक्सपैंड करके यह चुनना होगा कि क्वेरी में किन कॉलमों को शामिल करना है। सभी कॉलम चुनें, जिसमें हमारा नया ‘Cluster’ कॉलम भी शामिल है जो ऊपर दी गई स्क्रिप्ट से बना है, और यह सुनिश्चित करें कि ‘Use original column name as prefix' वाले बॉक्स का चयन हटाया हुआ हो।

अंत में, हमारे पास ऐसा डेटासेट होगा जिसमें सभी मूल कॉलम होंगे और एक अतिरिक्त कॉलम होगा जो दिखाएगा कि डेटा की प्रत्येक पंक्ति किस क्लस्टर को असाइन हुई है। इस उदाहरण में, हमने डेटा को 4 क्लस्टरों में बाँटने का चयन किया, इसलिए क्लस्टर लेबल 0 से 3 तक होने चाहिए।

निष्कर्ष
Power BI और Python इंटीग्रेशन से संभव चीज़ों का यह सिर्फ एक आरंभिक परिचय है। यदि इस ट्यूटोरियल ने Power BI का अधिकतम लाभ उठाने के प्रति आपकी जिज्ञासा बढ़ाई है, तो आप DataCamp का Power BI Fundamentals स्किल्स ट्रैक या Data Analyst with Power BI करियर ट्रैक देख सकते हैं।
Python डेटा साइंस और एनालिटिक्स के लिए सबसे लोकप्रिय और सबसे तेज़ी से बढ़ती प्रोग्रामिंग भाषाओं में से एक है। Python डेटा ट्रांसफॉर्मेशन, विज़ुअलाइज़ेशन, मशीन लर्निंग, आर्टिफिशियल इंटेलिजेंस, और बहुत कुछ जैसे अत्यंत जटिल कार्य करने में सक्षम है।
Power BI में Python के साथ सीधे इंटीग्रेशन की क्षमता है, जिससे Power BI की समग्र क्षमताएँ अगले स्तर पर पहुँच जाती हैं। इस ट्यूटोरियल में, हम Power BI में डेटा इम्पोर्ट करने और किसी मौजूदा डेटासेट को समृद्ध करने के लिए Python स्क्रिप्ट की सेटअप और उपयोग पर ध्यान देंगे।