पायथन आणि पॅटर्न रेकग्निशन अल्गोरिदम वापरून सखोल लॉग विश्लेषण, विसंगती ओळखणे आणि जागतिक स्तरावर सिस्टमची कार्यक्षमता सुधारणे.
पायथन लॉग विश्लेषण: पॅटर्न रेकग्निशन अल्गोरिदमसह अंतर्दृष्टी उलगडणे
आजच्या डेटा-आधारित जगात, लॉग माहितीचा एक अमूल्य स्रोत आहेत. ते सिस्टम इव्हेंट्स, वापरकर्ता क्रियाकलाप आणि संभाव्य समस्यांचा तपशीलवार रेकॉर्ड प्रदान करतात. तथापि, दररोज तयार होणाऱ्या लॉग डेटाचे प्रचंड प्रमाण मॅन्युअल विश्लेषण एक कठीण काम बनवू शकते. इथेच पायथन आणि पॅटर्न रेकग्निशन अल्गोरिदम मदतीला येतात, प्रक्रिया स्वयंचलित करण्यासाठी, अर्थपूर्ण अंतर्दृष्टी काढण्यासाठी आणि जागतिक पायाभूत सुविधांमधील सिस्टमची कार्यक्षमता सुधारण्यासाठी शक्तिशाली साधने देतात.
लॉग विश्लेषणासाठी पायथन का?
डेटा विश्लेषणासाठी पायथन ही पसंतीची भाषा म्हणून उदयास आली आहे आणि लॉग विश्लेषणही त्याला अपवाद नाही. याची कारणे खालीलप्रमाणे आहेत:
- विस्तृत लायब्ररी: पायथनकडे डेटा हाताळणी, विश्लेषण आणि मशीन लर्निंगसाठी विशेषतः डिझाइन केलेल्या लायब्ररींची समृद्ध इकोसिस्टम आहे.
pandas,numpy,scikit-learn, आणिregexसारख्या लायब्ररी प्रभावी लॉग विश्लेषणासाठी आवश्यक बिल्डिंग ब्लॉक्स प्रदान करतात. - वापरण्यास सुलभता: पायथनचे स्पष्ट आणि संक्षिप्त सिंटॅक्स कमी प्रोग्रामिंग अनुभव असलेल्या व्यक्तींसाठी देखील शिकणे आणि वापरणे सोपे करते. हे डेटा सायंटिस्ट आणि सिस्टम ॲडमिनिस्ट्रेटर दोघांसाठीही प्रवेशाचा अडथळा कमी करते.
- स्केलेबिलिटी: पायथन मोठ्या डेटासेटला सहजपणे हाताळू शकते, ज्यामुळे ते जटिल सिस्टम आणि उच्च-ट्रॅफिक ऍप्लिकेशन्सचे लॉग विश्लेषित करण्यासाठी योग्य ठरते. डेटा स्ट्रीमिंग आणि वितरित प्रक्रिया यांसारखी तंत्रे स्केलेबिलिटी आणखी वाढवू शकतात.
- अष्टपैलुत्व: पायथनचा वापर लॉग विश्लेषणाच्या कामांसाठी केला जाऊ शकतो, साध्या फिल्टरिंग आणि एग्रीगेशनपासून ते जटिल पॅटर्न रेकग्निशन आणि विसंगती शोधण्यापर्यंत.
- समुदाय समर्थन: एक मोठा आणि सक्रिय पायथन समुदाय सर्व स्तरांवरील वापरकर्त्यांसाठी भरपूर संसाधने, ट्यूटोरियल आणि समर्थन प्रदान करतो.
लॉग विश्लेषणासाठी पॅटर्न रेकग्निशन अल्गोरिदम समजून घेणे
पॅटर्न रेकग्निशन अल्गोरिदम डेटातील पुनरावृत्ती होणारे नमुने आणि विसंगती ओळखण्यासाठी डिझाइन केलेले आहेत. लॉग विश्लेषणाच्या संदर्भात, या अल्गोरिदमचा वापर असामान्य वर्तन ओळखण्यासाठी, सुरक्षा धोके ओळखण्यासाठी आणि संभाव्य सिस्टम बिघाडांचा अंदाज लावण्यासाठी केला जाऊ शकतो. लॉग विश्लेषणासाठी सामान्यतः वापरले जाणारे काही पॅटर्न रेकग्निशन अल्गोरिदम येथे आहेत:
1. रेग्युलर एक्सप्रेशन्स (Regex)
रेग्युलर एक्सप्रेशन्स हे टेक्स्ट डेटामधील पॅटर्न जुळवण्यासाठी एक मूलभूत साधन आहे. ते तुम्हाला लॉग फाइल्समध्ये शोधण्यासाठी विशिष्ट नमुने परिभाषित करण्याची परवानगी देतात. उदाहरणार्थ, तुम्ही विशिष्ट एरर कोड किंवा विशिष्ट वापरकर्त्याचा IP ॲड्रेस असलेले सर्व लॉग नोंदी ओळखण्यासाठी रेग्युलर एक्सप्रेशन वापरू शकता.
उदाहरण: IP ॲड्रेस असलेले सर्व लॉग नोंदी शोधण्यासाठी, तुम्ही खालील regex वापरू शकता:
(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b
पायथनचा re मॉड्यूल रेग्युलर एक्सप्रेशन्ससह कार्य करण्यासाठी कार्यक्षमता प्रदान करतो. असंरचित लॉग डेटामधून संबंधित माहिती काढण्यासाठी हे अनेकदा पहिले पाऊल असते.
2. क्लस्टरिंग अल्गोरिदम
क्लस्टरिंग अल्गोरिदम समान डेटा पॉइंट्सना एकत्र गटबद्ध करतात. लॉग विश्लेषणात, याचा वापर इव्हेंट्स किंवा वापरकर्ता वर्तनाच्या सामान्य नमुन्यांची ओळख पटवण्यासाठी केला जाऊ शकतो. उदाहरणार्थ, तुम्ही टाइमस्टॅम्प, स्त्रोत IP ॲड्रेस किंवा ते ज्या इव्हेंटचा प्रतिनिधित्व करतात त्या प्रकारानुसार लॉग नोंदी गटबद्ध करण्यासाठी क्लस्टरिंग वापरू शकता.
सामान्य क्लस्टरिंग अल्गोरिदम:
- K-Means: क्लस्टर सेंट्रोइड्सपासूनच्या अंतरावर आधारित डेटाला k भिन्न क्लस्टरमध्ये विभाजित करते.
- Hierarchical Clustering: क्लस्टरची एक श्रेणी तयार करते, ज्यामुळे तुम्हाला विविध स्तरांची ग्रॅन्युलॅरिटी एक्सप्लोर करण्याची अनुमती मिळते.
- DBSCAN (Density-Based Spatial Clustering of Applications with Noise): घनतेवर आधारित क्लस्टर ओळखते, गोंधळाला अर्थपूर्ण क्लस्टरपासून प्रभावीपणे वेगळे करते. सामान्य नमुन्यांमध्ये न बसणाऱ्या विसंगत लॉग नोंदी ओळखण्यासाठी उपयुक्त.
उदाहरण: जगभरातील वेब सर्व्हर ॲक्सेस लॉगचे विश्लेषण करण्याची कल्पना करा. K-Means IP ॲड्रेसवर आधारित (जिओलोकेशन लुकअप नंतर) भौगोलिक प्रदेशानुसार ॲक्सेस नमुने गटबद्ध करू शकते, असामान्यपणे जास्त ट्रॅफिक असलेले किंवा संशयास्पद क्रियाकलाप असलेले प्रदेश दर्शवते. विविध वापरकर्ता सत्रांचे प्रकार ओळखण्यासाठी Hierarchical clustering वापरले जाऊ शकते, जे भेट दिलेल्या पृष्ठांच्या क्रमाने आधारित असेल.
3. विसंगती शोधणे अल्गोरिदम
विसंगती शोधणे अल्गोरिदम सामान्यपासून लक्षणीयरीत्या विचलित होणारे डेटा पॉइंट्स ओळखतात. हे अल्गोरिदम विशेषतः सुरक्षा धोके, सिस्टम बिघाड आणि इतर असामान्य घटना शोधण्यासाठी उपयुक्त आहेत.
सामान्य विसंगती शोधणे अल्गोरिदम:
- Isolation Forest: डेटा स्पेसला यादृच्छिकपणे विभाजित करून विसंगती वेगळ्या करते. विसंगती वेगळ्या करण्यासाठी सामान्यतः कमी विभाजनांची आवश्यकता असते.
- One-Class SVM (Support Vector Machine): सामान्य डेटा पॉइंट्सभोवती एक सीमा शिकते आणि या सीमेबाहेर पडणाऱ्या कोणत्याही पॉइंट्सना विसंगती म्हणून ओळखते.
- Autoencoders (Neural Networks): सामान्य डेटाचे पुनर्रचना करण्यासाठी न्यूरल नेटवर्कला प्रशिक्षण देते. डेटा पॉइंट्स जे नेटवर्कला अचूकपणे पुनर्रचना करण्यास त्रास देतात, त्यांना विसंगती म्हणून ओळखले जाते.
उदाहरण: डेटाबेस क्वेरी लॉगवर ऑटोएनकोडर वापरल्याने सामान्य क्वेरी नमुन्यांपासून विचलित होणाऱ्या असामान्य किंवा दुर्भावनापूर्ण क्वेरी ओळखल्या जाऊ शकतात, ज्यामुळे SQL इंजेक्शन हल्ले रोखण्यास मदत होते. जागतिक पेमेंट प्रोसेसिंग सिस्टममध्ये, Isolation Forest असामान्य रक्कम, ठिकाणे किंवा वारंवारता असलेले व्यवहार ध्वजांकित करू शकते.
4. टाइम सिरीज विश्लेषण
टाइम सिरीज विश्लेषण हे वेळेनुसार गोळा केलेला डेटा विश्लेषित करण्यासाठी वापरले जाते. लॉग विश्लेषणात, याचा उपयोग वेळेनुसार लॉग डेटामधील ट्रेंड, सीजनॅलिटी आणि विसंगती ओळखण्यासाठी केला जाऊ शकतो.
सामान्य टाइम सिरीज विश्लेषण तंत्र:
- ARIMA (Autoregressive Integrated Moving Average): एक सांख्यिकीय मॉडेल जे भविष्यातील मूल्यांचा अंदाज लावण्यासाठी भूतकाळातील मूल्यांचा वापर करते.
- Prophet: R आणि Python मध्ये लागू केलेले एक पूर्वानुमान प्रक्रिया. हे गहाळ डेटा आणि ट्रेंडमधील बदलांना प्रतिरोधक आहे आणि सामान्यतः आउटलायर्सना चांगल्या प्रकारे हाताळते.
- Seasonal Decomposition: टाइम सिरीजला त्याच्या ट्रेंड, सीझनल आणि रेसिड्यूअल घटकांमध्ये विभाजित करते.
उदाहरण: विविध डेटा सेंटर्समधील सर्व्हरवरील CPU युटिलायझेशन लॉगवर ARIMA लागू केल्याने भविष्यातील संसाधन गरजांचा अंदाज लावण्यास आणि संभाव्य अडथळ्यांना सक्रियपणे संबोधित करण्यास मदत मिळू शकते. सीझनल डीकंपोझिशनमुळे वेब ट्रॅफिक विशिष्ट प्रदेशांमध्ये विशिष्ट सुट्ट्यांदरम्यान वाढते हे उघड होऊ शकते, ज्यामुळे संसाधनांचे ऑप्टिमाइझ केलेले वाटप शक्य होते.
5. सिक्वेन्स मायनिंग
सिक्वेन्स मायनिंग सिक्वेन्शियल डेटामधील नमुने ओळखण्यासाठी वापरले जाते. लॉग विश्लेषणात, याचा उपयोग विशिष्ट परिणामांशी संबंधित घटनांच्या सिक्वेन्स ओळखण्यासाठी केला जाऊ शकतो, जसे की यशस्वी लॉगिन किंवा सिस्टम बिघाड.
सामान्य सिक्वेन्स मायनिंग अल्गोरिदम:
- Apriori: व्यवहार डेटाबेसमध्ये वारंवार येणारे आयटमसेट शोधते आणि नंतर असोसिएशन नियम तयार करते.
- GSP (Generalized Sequential Pattern): सिक्वेन्शियल डेटा हाताळण्यासाठी Apriori चा विस्तार करते.
उदाहरण: ई-कॉमर्स प्लॅटफॉर्मसाठी वापरकर्ता क्रियाकलाप लॉगचे विश्लेषण केल्याने खरेदीकडे नेणाऱ्या कृतींचे सामान्य क्रम उघड होऊ शकतात, ज्यामुळे लक्ष्यित विपणन मोहिम शक्य होते. सिस्टम इव्हेंट लॉगचे विश्लेषण केल्याने सिस्टम क्रॅश होण्यापूर्वी वारंवार घडणाऱ्या घटनांचे क्रम ओळखले जाऊ शकतात, ज्यामुळे सक्रिय समस्यानिवारण शक्य होते.
एक व्यावहारिक उदाहरण: विसंगत लॉगिन प्रयत्नांचा शोध घेणे
पायथन आणि विसंगती शोधणे अल्गोरिदमचा वापर विसंगत लॉगिन प्रयत्न शोधण्यासाठी कसा केला जाऊ शकतो हे आपण स्पष्ट करूया. स्पष्टतेसाठी आम्ही एक सरलीकृत उदाहरण वापरू.
- डेटा तयारी: समजा आमच्याकडे वापरकर्तानाव, IP ॲड्रेस, टाइमस्टॅम्प आणि लॉगिन स्थिती (यशस्वी/अयशस्वी) यांसारखी वैशिष्ट्ये असलेला लॉगिन डेटा आहे.
- वैशिष्ट्य अभियांत्रिकी: लॉगिन वर्तनाला कॅप्चर करणारी वैशिष्ट्ये तयार करा, जसे की विशिष्ट वेळेच्या विंडोमध्ये अयशस्वी लॉगिन प्रयत्नांची संख्या, शेवटच्या लॉगिन प्रयत्नापासून गेलेला वेळ आणि IP ॲड्रेसचे स्थान.
geopyसारख्या लायब्ररी वापरून भौगोलिक माहिती मिळवता येते. - मॉडेल प्रशिक्षण: ऐतिहासिक लॉगिन डेटावर Isolation Forest किंवा One-Class SVM सारखे विसंगती शोधणे मॉडेल प्रशिक्षित करा.
- विसंगती शोधणे: प्रशिक्षित मॉडेल नवीन लॉगिन प्रयत्नांवर लागू करा. जर मॉडेलने लॉगिन प्रयत्नाला विसंगती म्हणून ध्वजांकित केले, तर ते संभाव्य सुरक्षा धोका दर्शवू शकते.
- अलर्टिंग: विसंगत लॉगिन प्रयत्न आढळल्यास अलर्ट ट्रिगर करा.
पायथन कोड स्निपेट (उदाहरणात्मक):
import pandas as pd
from sklearn.ensemble import IsolationForest
# लॉगिन डेटा लोड करा
data = pd.read_csv('login_data.csv')
# वैशिष्ट्य अभियांत्रिकी (उदा. अयशस्वी लॉगिन प्रयत्न)
data['failed_attempts'] = data.groupby('username')['login_status'].cumsum()
# मॉडेलसाठी वैशिष्ट्ये निवडा
features = ['failed_attempts']
# Isolation Forest मॉडेल प्रशिक्षित करा
model = IsolationForest(n_estimators=100, contamination='auto', random_state=42)
model.fit(data[features])
# विसंगतींचा अंदाज लावा
data['anomaly'] = model.predict(data[features])
# विसंगत लॉगिन प्रयत्न ओळखा
anomalies = data[data['anomaly'] == -1]
print(anomalies)
महत्वाचे विचार:
- डेटा गुणवत्ता: विसंगती शोधणे मॉडेलची अचूकता लॉग डेटाच्या गुणवत्तेवर अवलंबून असते. डेटा स्वच्छ, अचूक आणि पूर्ण असल्याची खात्री करा.
- वैशिष्ट्य निवड: प्रभावी विसंगती शोधण्यासाठी योग्य वैशिष्ट्ये निवडणे महत्त्वपूर्ण आहे. विविध वैशिष्ट्ये वापरून पहा आणि मॉडेलच्या कार्यक्षमतेवर त्यांचा प्रभाव मूल्यांकन करा.
- मॉडेल ट्यूनिंग: मॉडेलची कार्यक्षमता ऑप्टिमाइझ करण्यासाठी विसंगती शोधणे मॉडेलचे हायपरपॅरामीटर्स फाइन-ट्यून करा.
- संदर्भात्मक जागरूकता: परिणामांचे विश्लेषण करताना लॉग डेटाच्या संदर्भाचा विचार करा. विसंगती नेहमी सुरक्षा धोके किंवा सिस्टम बिघाड दर्शवत नाहीत.
पायथनसह लॉग विश्लेषण पाइपलाइन तयार करणे
लॉगचे प्रभावीपणे विश्लेषण करण्यासाठी, एक मजबूत लॉग विश्लेषण पाइपलाइन तयार करणे उपयुक्त आहे. ही पाइपलाइन लॉग डेटा गोळा करणे, प्रक्रिया करणे, विश्लेषण करणे आणि व्हिज्युअलाइझ करण्याची प्रक्रिया स्वयंचलित करू शकते.
लॉग विश्लेषण पाइपलाइनचे मुख्य घटक:
- लॉग संकलन: सर्व्हर, ॲप्लिकेशन्स आणि नेटवर्क डिव्हाइसेससारख्या विविध स्त्रोतांकडून लॉग गोळा करा. लॉग संकलनासाठी Fluentd, Logstash आणि rsyslog सारखी साधने वापरली जाऊ शकतात.
- लॉग प्रक्रिया: लॉग डेटा स्वच्छ करा, पार्स करा आणि संरचित स्वरूपात रूपांतरित करा. पायथनचे
regexआणिpandasलायब्ररी लॉग प्रक्रियेसाठी उपयुक्त आहेत. - डेटा स्टोरेज: प्रक्रिया केलेला लॉग डेटा डेटाबेस किंवा डेटा वेअरहाउसमध्ये संग्रहित करा. पर्यायांमध्ये Elasticsearch, MongoDB आणि Apache Cassandra यांचा समावेश आहे.
- विश्लेषण आणि व्हिज्युअलायझेशन: पॅटर्न रेकग्निशन अल्गोरिदम वापरून लॉग डेटाचे विश्लेषण करा आणि Matplotlib, Seaborn आणि Grafana सारख्या साधनांचा वापर करून निकाल व्हिज्युअलाइझ करा.
- अलर्टिंग: गंभीर घटना किंवा विसंगतींबद्दल प्रशासकांना सूचित करण्यासाठी अलर्ट सेट करा.
उदाहरण: जागतिक ई-कॉमर्स कंपनी तिच्या वेब सर्व्हर, ॲप्लिकेशन सर्व्हर आणि डेटाबेस सर्व्हरमधून लॉग गोळा करू शकते. वापरकर्ता क्रियाकलाप, व्यवहार तपशील आणि त्रुटी संदेश यांसारखी संबंधित माहिती काढण्यासाठी लॉगवर प्रक्रिया केली जाते. प्रक्रिया केलेला डेटा Elasticsearch मध्ये संग्रहित केला जातो आणि Kibana डेटा व्हिज्युअलाइझ करण्यासाठी आणि डॅशबोर्ड तयार करण्यासाठी वापरला जातो. संशयास्पद क्रियाकलाप, जसे की अनधिकृत प्रवेश प्रयत्न किंवा फसव्या व्यवहारांसाठी सुरक्षा टीमला सूचित करण्यासाठी अलर्ट कॉन्फिगर केले जातात.
लॉग विश्लेषणासाठी प्रगत तंत्र
मूलभूत अल्गोरिदम आणि तंत्रांच्या पलीकडे, अनेक प्रगत दृष्टिकोन तुमची लॉग विश्लेषण क्षमता वाढवू शकतात:
1. नैसर्गिक भाषा प्रक्रिया (NLP)
NLP तंत्रांचा वापर असंरचित लॉग संदेशांचे विश्लेषण करण्यासाठी, अर्थ आणि संदर्भ काढण्यासाठी केला जाऊ शकतो. उदाहरणार्थ, लॉग संदेशांची भावना ओळखण्यासाठी किंवा वापरकर्तानाव, IP ॲड्रेस आणि एरर कोड्स यांसारख्या मुख्य घटकांना काढण्यासाठी तुम्ही NLP वापरू शकता.
2. लॉग पार्सिंगसाठी मशीन लर्निंग
पारंपारिक लॉग पार्सिंग पूर्वनिर्धारित रेग्युलर एक्सप्रेशन्सवर अवलंबून असते. मशीन लर्निंग मॉडेल्स लॉग संदेशांना पार्स करण्यासाठी स्वयंचलितपणे शिकू शकतात, लॉग स्वरूपातील बदलांशी जुळवून घेऊ शकतात आणि मॅन्युअल कॉन्फिगरेशनची आवश्यकता कमी करू शकतात. Drain आणि LKE सारखी साधने विशेषतः मशीन लर्निंग वापरून लॉग पार्सिंगसाठी डिझाइन केलेली आहेत.
3. सुरक्षेसाठी फेडरेटेड लर्निंग
अशा परिस्थितीत जेथे संवेदनशील लॉग डेटा गोपनीयता नियमांमुळे (उदा. GDPR) विविध प्रदेशांमध्ये किंवा संस्थांमध्ये सामायिक केला जाऊ शकत नाही, फेडरेटेड लर्निंग वापरले जाऊ शकते. फेडरेटेड लर्निंग तुम्हाला कच्चा डेटा शेअर न करता विकेंद्रित डेटावर मशीन लर्निंग मॉडेल्स प्रशिक्षित करण्याची परवानगी देते. हे विशेषतः अशा सुरक्षा धोक्यांचा शोध घेण्यासाठी उपयुक्त ठरू शकते जे अनेक प्रदेश किंवा संस्थांमध्ये पसरलेले आहेत.
लॉग विश्लेषणासाठी जागतिक विचार
जागतिक पायाभूत सुविधांमधून लॉगचे विश्लेषण करताना, खालील घटकांचा विचार करणे आवश्यक आहे:
- वेळ क्षेत्रे: विश्लेषणात विसंगती टाळण्यासाठी सर्व लॉग डेटा एका सातत्यपूर्ण वेळ क्षेत्रात रूपांतरित केला गेला आहे याची खात्री करा.
- डेटा गोपनीयता नियम: लॉग डेटा गोळा करताना आणि प्रक्रिया करताना GDPR आणि CCPA सारख्या डेटा गोपनीयता नियमांचे पालन करा.
- भाषा समर्थन: तुमच्या लॉग विश्लेषण साधनांमध्ये अनेक भाषांना समर्थन असल्याची खात्री करा, कारण लॉगमध्ये वेगवेगळ्या भाषांमधील संदेश असू शकतात.
- सांस्कृतिक फरक: लॉग डेटाचे विश्लेषण करताना सांस्कृतिक फरकांची जाणीव ठेवा. उदाहरणार्थ, विशिष्ट संज्ञा किंवा वाक्ये वेगवेगळ्या संस्कृतीत वेगवेगळे अर्थ असू शकतात.
- भौगोलिक वितरण: लॉग डेटाचे विश्लेषण करताना तुमच्या पायाभूत सुविधांच्या भौगोलिक वितरणाचा विचार करा. विशिष्ट घटना किंवा परिस्थितीमुळे काही प्रदेशांमध्ये विसंगती अधिक सामान्य असू शकतात.
निष्कर्ष
पायथन आणि पॅटर्न रेकग्निशन अल्गोरिदम लॉग डेटाचे विश्लेषण करण्यासाठी, विसंगती ओळखण्यासाठी आणि सिस्टमची कार्यक्षमता सुधारण्यासाठी एक शक्तिशाली टूलकिट प्रदान करतात. या साधनांचा लाभ घेऊन, संस्था त्यांच्या लॉगमधून मौल्यवान अंतर्दृष्टी मिळवू शकतात, संभाव्य समस्यांना सक्रियपणे संबोधित करू शकतात आणि त्यांच्या जागतिक पायाभूत सुविधांमधील सुरक्षा वाढवू शकतात. डेटाचे प्रमाण वाढतच जाईल, तसतसे स्वयंचलित लॉग विश्लेषणाचे महत्त्व वाढतच जाईल. आजच्या डेटा-चालित जगात स्पर्धात्मक धार राखू इच्छिणाऱ्या संस्थांसाठी या तंत्रांचा स्वीकार करणे आवश्यक आहे.
पुढील शोध:
- विसंगती शोधासाठी Scikit-learn दस्तऐवजीकरण: https://scikit-learn.org/stable/modules/outlier_detection.html
- Pandas दस्तऐवजीकरण: https://pandas.pydata.org/docs/
- Regex ट्यूटोरियल: https://docs.python.org/3/howto/regex.html