मुख्य सामग्री पर जाएं

Python में कर्मचारी churn का पूर्वानुमान

कर्मचारी churn का विश्लेषण करें। जानें कि कर्मचारी कंपनी क्यों छोड़ रहे हैं, और यह भी सीखें कि कौन कंपनी छोड़ेगा इसका पूर्वानुमान कैसे लगाएँ।
अपडेट किया गया 25 सित॰ 2026  · 14 मि॰ पढ़ें

AI के साथ खोजें

ChatGPTClaudePerplexity

पहले, ध्यान का अधिकतर केंद्र ‘दर’ जैसे एट्रिशन रेट और रिटेंशन रेट पर रहता था। HR मैनेजर पिछली दरों की गणना कर डेटा वेयरहाउसिंग टूल्स से भविष्य की दरों का अनुमान लगाने की कोशिश करते हैं। ये दरें churn के समग्र प्रभाव को दिखाती हैं, लेकिन यह तस्वीर का आधा हिस्सा है। एक दूसरा तरीका यह है कि समग्र के साथ-साथ व्यक्तिगत रिकॉर्ड पर भी ध्यान दिया जाए।

ग्राहक churn पर बहुत से केस स्टडी उपलब्ध हैं। ग्राहक churn में आप अनुमान लगा सकते हैं कि कौन और कब ग्राहक खरीदना बंद करेगा। कर्मचारी churn ग्राहक churn के समान है। इसमें केंद्र ग्राहक के बजाय कर्मचारी होता है। यहां, आप भविष्यवाणी कर सकते हैं कि कौन और कब कोई कर्मचारी सेवा समाप्त करेगा। कर्मचारी churn महंगा होता है, और छोटे-छोटे सुधार भी बड़े नतीजे देते हैं। यह हमें बेहतर रिटेंशन प्लान बनाने और कर्मचारी संतुष्टि में सुधार करने में मदद करेगा।

कर्मचारी Churn विश्लेषण

python में कर्मचारी churn विश्लेषण


कर्मचारी churn को किसी कंपनी या संगठन से बौद्धिक संपदा के रिसाव या प्रस्थान के रूप में परिभाषित किया जा सकता है। सरल शब्दों में, जब कर्मचारी संगठन छोड़ते हैं, तो उसे churn कहा जाता है। एक और परिभाषा यह हो सकती है कि जब किसी जनसंख्या का सदस्य उस जनसंख्या को छोड़ देता है, तो वह churn कहलाता है।

अनुसंधान में पाया गया कि कर्मचारी churn पर उम्र, कार्यकाल, वेतन, नौकरी संतुष्टि, सैलरी, कार्य परिस्थितियाँ, विकास की संभावनाएँ और निष्पक्षता को लेकर कर्मचारी की धारणा का प्रभाव पड़ता है। कुछ अन्य चर जैसे उम्र, लिंग, जातीयता, शिक्षा, और वैवाहिक स्थिति, कर्मचारी churn की भविष्यवाणी में महत्वपूर्ण कारक थे। कुछ मामलों में, निचे स्किल वाले कर्मचारियों को बदलना कठिन होता है। इसका प्रभाव चल रहे काम और मौजूदा कर्मचारियों की उत्पादकता पर पड़ता है। प्रतिस्थापन के रूप में नए कर्मचारियों को नियुक्त करने में भर्ती और प्रशिक्षण जैसी लागतें आती हैं। साथ ही, नया कर्मचारी पुराने कर्मचारी के तकनीकी या व्यावसायिक विशेषज्ञता के समान स्तर की कौशल सीखने में समय लेगा। संगठन इस समस्या से निपटने के लिए मशीन लर्निंग तकनीकों का उपयोग कर कर्मचारी churn की भविष्यवाणी करते हैं, जो उन्हें आवश्यक कार्रवाई करने में मदद करता है।

निम्नलिखित बिंदु आपको कर्मचारी और ग्राहक churn को बेहतर तरीके से समझने में मदद करते हैं:

  • बिज़नेस किसी कर्मचारी को नियुक्त करने के लिए चुनता है, जबकि मार्केटिंग में आप अपने ग्राहकों को नहीं चुन सकते।

  • कर्मचारी आपकी कंपनी का चेहरा होते हैं, और सामूहिक रूप से, वही आपकी कंपनी का सारा काम करते हैं।

  • एक ग्राहक को खोना राजस्व और ब्रांड इमेज को प्रभावित करता है। मौजूदा ग्राहक को बनाए रखने की तुलना में नए ग्राहक हासिल करना कठिन और महंगा है। कर्मचारी churn भी कंपनियों/संगठनों के लिए पीड़ादायक होता है। प्रतिस्थापन ढूंढने और प्रशिक्षण में समय और प्रयास लगता है।

कर्मचारी churn की गतिशीलता ग्राहक churn की तुलना में अलग होती है। यह हमें बेहतर कर्मचारी रिटेंशन प्लान बनाने और कर्मचारी संतुष्टि बढ़ाने में मदद करता है। डेटा साइंस एल्गोरिद्म भविष्य के churn का पूर्वानुमान लगा सकते हैं।


एक्सप्लोरेटरी विश्लेषण


एक्सप्लोरेटरी डेटा एनालिसिस एक प्रारंभिक प्रक्रिया है जिसमें आप वर्णनात्मक आँकड़ों और विज़ुअलाइज़ेशन का उपयोग करके पैटर्न, ट्रेंड, आउट्लायर और परिकल्पना परीक्षण जैसे डेटा के गुणों का सार प्रस्तुत करते हैं।

मॉड्यूल आयात करना

#import modules
import pandas  # for dataframes
import matplotlib.pyplot as plt # for plotting graphs
import seaborn as sns # for plotting graphs
% matplotlib inline


डेटासेट लोड करना

आइए पहले pandas की read CSV फ़ंक्शन का उपयोग करके आवश्यक HR डेटासेट लोड करें। आप यह डेटा इस लिंक से डाउनलोड कर सकते हैं।

data=pandas.read_csv('HR_comma_sep.csv')
data.head()

कर्मचारी churn डेटासेट लोड करना

  • यहाँ, मूल डेटा दिए गए डेटा सेट में कॉमा डेलिमिटर (“ , “) से अलग किया गया है।
  • आप pandas लाइब्रेरी के “head()” फ़ंक्शन की मदद से डेटा को नज़दीक से देख सकते हैं, जो पहली पाँच ऑब्ज़र्वेशन लौटाता है।
  • इसी तरह “tail()” अंतिम पाँच ऑब्ज़र्वेशन लौटाता है।

data.tail()

hr डेटासेट


डेटासेट लोड करने के बाद, आप इसके बारे में थोड़ा और जानना चाहेंगे। आप info() का उपयोग करके एट्रिब्यूट के नाम और डाटाटाइप की जाँच कर सकते हैं।

 
data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 14,999 entries, 0 to 14,998
Data columns (total 10 columns):
satisfaction_level       14999 non-null float64
last_evaluation          14999 non-null float64
number_project           14999 non-null int64
average_montly_hours     14999 non-null int64
time_spend_company       14999 non-null int64
Work_accident            14999 non-null int64
left                     14999 non-null int64
promotion_last_5years    14999 non-null int64
Departments              14999 non-null object
salary                   14999 non-null object
dtypes: float64(2), int64(6), object(2)
memory usage: 1.1+ MB
  • इस डेटासेट में 14,999 सैंपल और 10 एट्रिब्यूट हैं (6 इंटीजर, 2 फ़्लोट, और 2 ऑब्जेक्ट)।
  • किसी भी वेरिएबल कॉलम में null/मिसिंग वैल्यू नहीं है।


आप 10 एट्रिब्यूट को विस्तार से इस प्रकार वर्णित कर सकते हैं:

  • satisfaction_level: यह कर्मचारी संतुष्टि अंक है, जो 0-1 के बीच होता है।
  • last_evaluation: यह नियोक्ता द्वारा किया गया प्रदर्शन मूल्यांकन है, जो 0-1 के बीच होता है।
  • number_projects: किसी कर्मचारी को कितने प्रोजेक्ट सौंपे गए हैं?
  • average_monthly_hours: एक महीने में किसी कर्मचारी द्वारा काम किए गए औसत घंटे कितने हैं?
  • time_spent_company: time_spent_company का मतलब कर्मचारी का अनुभव। कंपनी में कर्मचारी द्वारा बिताए गए वर्षों की संख्या।
  • work_accident: क्या कर्मचारी का कार्यस्थल पर कोई हादसा हुआ है या नहीं।
  • promotion_last_5years: क्या कर्मचारी को पिछले 5 वर्षों में प्रमोशन मिला है या नहीं।
  • Departments: कर्मचारी का कार्य विभाग/डिवीज़न।
  • Salary: कर्मचारी का वेतन स्तर, जैसे low, medium और high।
  • left: क्या कर्मचारी ने कंपनी छोड़ी है या नहीं।


आइए डेटा इनसाइट्स में उतरें

दिए गए डेटासेट में, आपके पास दो तरह के कर्मचारी हैं—एक जो रुके और दूसरे जो कंपनी छोड़कर चले गए। इसलिए, आप डेटा को दो समूहों में बाँटकर उनकी विशेषताओं की तुलना कर सकते हैं। यहाँ, आप groupby() और mean() फ़ंक्शन का उपयोग करके दोनों समूहों का औसत निकाल सकते हैं।

left = data.groupby('left')
left.mean()

मीन से समूहित डेटा


यहाँ आप देख सकते हैं, जिन्होंने कंपनी छोड़ी, उनका संतुष्टि स्तर कम था, प्रमोशन दर कम थी, सैलरी कम थी, और उन्होंने कंपनी में रुके कर्मचारियों की तुलना में अधिक काम किया।

pandas में describe() फ़ंक्शन विभिन्न समरी आँकड़े प्राप्त करने में सुविधाजनक है। यह फ़ंक्शन डेटा की काउंट, मीन, स्टैंडर्ड डिविएशन, न्यूनतम और अधिकतम मान और क्वांटाइल्स लौटाता है।

 
data.describe()

pandas describe फ़ंक्शन के साथ डेटा


डेटा विज़ुअलाइज़ेशन

कर्मचारी जिन्होंने छोड़ा

आइए देखें कितने कर्मचारियों ने कंपनी छोड़ी?

यहाँ, आप Matplotlib का उपयोग करके बार ग्राफ़ प्लॉट कर सकते हैं। बार ग्राफ़ असतत वेरिएबल काउंट दिखाने के लिए उपयुक्त है।

left_count=data.groupby('left').count()
plt.bar(left_count.index.values, left_count['satisfaction_level'])
plt.xlabel('Employees Left Company')
plt.ylabel('Number of Employees')
plt.show()

matplotlib के साथ कर्मचारियों का छोड़ा हुआ ग्राफ
 
data.left.value_counts()
0    11428
1     3571
Name: left, dtype: int64


यहाँ, आप देख सकते हैं कि लगभग 15,000 में से 3,571 ने छोड़ा, और 11,428 रुके। कंपनी छोड़ने वाले कर्मचारियों की संख्या कुल रोजगार का 23% है।

प्रोजेक्ट की संख्या

इसी तरह, आप बार ग्राफ़ प्लॉट कर सकते हैं कि कितने कर्मचारियों को कितने प्रोजेक्ट पर तैनात किया गया है?

num_projects=data.groupby('number_project').count()
plt.bar(num_projects.index.values, num_projects['satisfaction_level'])
plt.xlabel('Number of Projects')
plt.ylabel('Number of Employees')
plt.show()

matplotlib के साथ प्रोजेक्ट की संख्या
  • ज्यादातर कर्मचारी 3-5 प्रोजेक्ट कर रहे हैं।

कंपनी में बिताया समय

इसी तरह, आप यह गिनने के लिए भी बार ग्राफ़ प्लॉट कर सकते हैं कि अनुभव के आधार पर कितने कर्मचारी हैं?

time_spent=data.groupby('time_spend_company').count()
plt.bar(time_spent.index.values, time_spent['satisfaction_level'])
plt.xlabel('Number of Years Spend in Company')
plt.ylabel('Number of Employees')
plt.show()

matplotlib के साथ कंपनी में बिताया समय ग्राफ

ज्यादातर कर्मचारियों का अनुभव 2-4 वर्षों के बीच है। साथ ही, 3 और 4 वर्ष के अनुभव वाले कर्मचारियों के बीच बड़ा अंतर है।

Seaborn का उपयोग कर सबप्लॉट

आप इस तरह एक-एक फीचर का विश्लेषण कर सकते हैं, लेकिन यह समय लेने वाला होगा। बेहतर विकल्प है Seaborn लाइब्रेरी का उपयोग कर सबप्लॉट्स के साथ एक ही रन में सभी ग्राफ़ प्लॉट करना।

features=['number_project','time_spend_company','Work_accident','left', 'promotion_last_5years','Departments ','salary']
fig=plt.subplots(figsize=(10,15))
for i, j in enumerate(features):
    plt.subplot(4, 2, i+1)
    plt.subplots_adjust(hspace = 1.0)
    sns.countplot(x=j,data = data)
    plt.xticks(rotation=90)
    plt.title("No. of employee")

seaborn के साथ कर्मचारी ग्राफ

ऊपर दिए गए विज़ुअलाइज़ेशन में आप निम्न बिंदु देख सकते हैं:

  • ज्यादातर कर्मचारी 3-5 प्रोजेक्ट कर रहे हैं।
  • 3 और 4 वर्ष के अनुभव वाले कर्मचारियों के बीच बड़ा गिराव है।
  • कुल रोजगार का 23% कर्मचारियों ने छोड़ा है।
  • पिछले 5 वर्षों में बहुत कम कर्मचारियों को प्रमोशन मिला है।
  • सेल्स विभाग में अधिकतम कर्मचारी हैं, उसके बाद टेक्निकल और सपोर्ट।
  • अधिकांश कर्मचारियों को मीडियम या लो सैलरी मिल रही है।

fig=plt.subplots(figsize=(10,15))
for i, j in enumerate(features):
    plt.subplot(4, 2, i+1)
    plt.subplots_adjust(hspace = 1.0)
    sns.countplot(x=j,data = data, hue='left')
    plt.xticks(rotation=90)
    plt.title("No. of employee")

ऊपर दिए गए विज़ुअलाइज़ेशन में आप निम्न बिंदु देख सकते हैं:

  • जिन कर्मचारियों के प्रोजेक्ट 5 से अधिक थे, वे कंपनी छोड़ गए।
  • 6 और 7 प्रोजेक्ट करने वाले कर्मचारी कंपनी छोड़ गए—लगता है वे काम के बोझ से दबे थे।
  • 5 साल के अनुभव वाले कर्मचारी अधिक छोड़ रहे हैं क्योंकि पिछले 5 वर्षों में प्रमोशन नहीं मिला; और 6 वर्ष से अधिक अनुभव वाले नहीं छोड़ रहे हैं क्योंकि कंपनी से लगाव है।
  • जिन्हें पिछले 5 वर्षों में प्रमोशन मिला, उन्होंने नहीं छोड़ा; यानी जिन्होंने छोड़ा, उन्हें पिछले 5 वर्षों में प्रमोशन नहीं मिला।


डेटा विश्लेषण और विज़ुअलाइज़ेशन सारांश:

निम्नलिखित फीचर किसी व्यक्ति को कंपनी छोड़ने के लिए सबसे अधिक प्रभावित करते हैं:

  • प्रमोशन: जिन कर्मचारियों को पिछले 5 वर्षों में प्रमोशन नहीं मिला, उनके नौकरी छोड़ने की संभावना कहीं अधिक है।
  • कंपनी में समय: यहाँ, तीन साल का पड़ाव कर्मचारी के करियर में एक अहम बिंदु दिखाई देता है। अधिकांश लोग लगभग तीन साल के आसपास नौकरी छोड़ते हैं। एक और महत्वपूर्ण बिंदु 6 वर्ष का पड़ाव है, जहाँ कर्मचारी के छोड़ने की संभावना बहुत कम होती है।
  • प्रोजेक्ट की संख्या: कर्मचारी एंगेजमेंट एक और अहम कारक है जो कंपनी छोड़ने को प्रभावित करता है। 3-5 प्रोजेक्ट वाले कर्मचारियों के छोड़ने की संभावना कम है। बहुत कम या बहुत अधिक प्रोजेक्ट वाले कर्मचारी छोड़ने की ओर अधिक प्रवृत्त हैं।
  • सैलरी: जो कर्मचारी छोड़ते हैं, उनमें से अधिकतर मिड या लो सैलरी समूह में होते हैं।


क्लस्टर विश्लेषण:


आइए उन कर्मचारियों के समूह ढूँढें जिन्होंने छोड़ा। आप देख सकते हैं कि किसी भी कर्मचारी के रुकने या छोड़ने के लिए सबसे महत्वपूर्ण कारक कंपनी में संतुष्टि और प्रदर्शन है। तो आइए क्लस्टर विश्लेषण का उपयोग करके उन्हें समूहों में बाँटें।

#import module
from sklearn.cluster import KMeans
# Filter data
left_emp =  data[['satisfaction_level', 'last_evaluation']][data.left == 1]
# Create groups using K-means clustering.
kmeans = KMeans(n_clusters = 3, random_state = 0).fit(left_emp)
# Add new column "label" annd assign cluster labels.
left_emp['label'] = kmeans.labels_
# Draw scatter plot
plt.scatter(left_emp['satisfaction_level'], left_emp['last_evaluation'], c=left_emp['label'],cmap='Accent')
plt.xlabel('Satisfaction Level')
plt.ylabel('Last Evaluation')
plt.title('3 Clusters of employees who left')
plt.show()

कर्मचारी विश्लेषण के लिए क्लस्टर विश्लेषण


यहाँ, कंपनी छोड़ने वाले कर्मचारियों को 3 प्रकार के कर्मचारियों में बाँटा जा सकता है:

  • उच्च संतुष्टि और उच्च मूल्यांकन (ग्राफ़ में हरे रंग की छाया), इन्हें आप Winners कह सकते हैं।
  • कम संतुष्टि और उच्च मूल्यांकन (ग्राफ़ में नीली रंग की छाया), इन्हें आप Frustrated कह सकते हैं।
  • मध्यम संतुष्टि और मध्यम मूल्यांकन (ग्राफ़ में ग्रे रंग की छाया), इन्हें आप 'Bad match' कह सकते हैं।


पूर्वानुमान मॉडल बनाना


डेटा का पूर्व-प्रसंस्करण

कई मशीन लर्निंग एल्गोरिद्म को संख्यात्मक इनपुट डेटा की आवश्यकता होती है, इसलिए आपको श्रेणीबद्ध कॉलम को संख्यात्मक कॉलम में दर्शाना होगा।

इस डेटा को एन्कोड करने के लिए, आप प्रत्येक मान को एक संख्या से मैप कर सकते हैं। जैसे, Salary कॉलम के मान low:0, medium:1, और high:2 से दर्शाए जा सकते हैं।

इस प्रक्रिया को लेबल एन्कोडिंग कहा जाता है, और sklearn इसे LabelEncoder का उपयोग करके सुविधाजनक रूप से कर देता है।

# Import LabelEncoder
from sklearn import preprocessing
#creating labelEncoder
le = preprocessing.LabelEncoder()
# Converting string labels into numbers.
data['salary']=le.fit_transform(data['salary'])
data['Departments ']=le.fit_transform(data['Departments '])


यहाँ, आपने preprocessing मॉड्यूल आयात किया और एक Label Encoder ऑब्जेक्ट बनाया। इस LabelEncoder ऑब्जेक्ट का उपयोग कर आपने "salary" और "Departments " कॉलम को संख्यात्मक कॉलम में फिट और ट्रांसफॉर्म किया।

ट्रेन और टेस्ट सेट में विभाजन

मॉडल प्रदर्शन समझने के लिए, डेटासेट को ट्रेनिंग सेट और टेस्ट सेट में बाँटना एक अच्छा तरीका है।

आइए train_test_split() फ़ंक्शन का उपयोग करके डेटासेट विभाजित करें। आपको 3 पैरामीटर देने हैं: फीचर, टारगेट और टेस्ट सेट का आकार। अतिरिक्त रूप से, आप रिकॉर्ड को रैंडम चुनने के लिए random_state का उपयोग कर सकते हैं।

#Spliting data into Feature and
X=data[['satisfaction_level', 'last_evaluation', 'number_project',
       'average_montly_hours', 'time_spend_company', 'Work_accident',
       'promotion_last_5years', 'Departments ', 'salary']]
y=data['left']
# Import train_test_split function
from sklearn.model_selection import train_test_split

# Split dataset into training set and test set
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)  # 70% training and 30% test


यहाँ, डेटासेट को 70:30 के अनुपात में दो हिस्सों में बाँटा गया है। यानी 70% डेटा मॉडल ट्रेनिंग के लिए और 30% मॉडल टेस्टिंग के लिए उपयोग होगा।

मॉडल बनाना

आइए कर्मचारी churn का एक पूर्वानुमान मॉडल बनाते हैं।

यहाँ, आप Gradient Boosting Classifier का उपयोग करके churn की भविष्यवाणी करने जा रहे हैं।

पहले, GradientBoostingClassifier मॉड्यूल आयात करें और GradientBoostingClassifier() फ़ंक्शन का उपयोग कर Gradient Boosting क्लासिफ़ायर ऑब्जेक्ट बनाएँ।

फिर, fit() का उपयोग कर अपने मॉडल को ट्रेन सेट पर फिट करें और predict() का उपयोग कर टेस्ट सेट पर प्रेडिक्शन करें।

#Import Gradient Boosting Classifier model
from sklearn.ensemble import GradientBoostingClassifier

#Create Gradient Boosting Classifier
gb = GradientBoostingClassifier()

#Train the model using the training sets
gb.fit(X_train, y_train)

#Predict the response for test dataset
y_pred = gb.predict(X_test)


मॉडल प्रदर्शन का मूल्यांकन

 
#Import scikit-learn metrics module for accuracy calculation
from sklearn import metrics
# Model Accuracy, how often is the classifier correct?
print("Accuracy:",metrics.accuracy_score(y_test, y_pred))
# Model Precision
print("Precision:",metrics.precision_score(y_test, y_pred))
# Model Recall
print("Recall:",metrics.recall_score(y_test, y_pred))
Accuracy: 0.971555555556
Precision: 0.958252427184
Recall: 0.920708955224

ठीक है, आपको 97% की क्लासिफिकेशन दर मिली है, जिसे अच्छी सटीकता माना जाता है।

प्रिसिजन: प्रिसिजन का मतलब है सटीक होना, यानी आपका मॉडल कितना सटीक है। दूसरे शब्दों में, जब मॉडल कोई प्रेडिक्शन करता है, तो वह कितनी बार सही होता है। आपके प्रेडिक्शन मामले में, जब आपके Gradient Boosting मॉडल ने किसी कर्मचारी के छोड़ने की भविष्यवाणी की, तो वह कर्मचारी 95% समय वास्तव में छोड़ गया।

रिकॉल: यदि टेस्ट सेट में कोई ऐसा कर्मचारी मौजूद है जिसने छोड़ा, तो आपका Gradient Boosting मॉडल उसे 92% समय पहचान लेता है।

निष्कर्ष


बधाई हो, आप इस ट्यूटोरियल के अंत तक पहुँच गए हैं!

इस ट्यूटोरियल में, आपने सीखा कि Employee Churn क्या है, यह ग्राहक churn से कैसे अलग है, matplotlib और seaborn का उपयोग कर कर्मचारी churn डेटासेट का एक्सप्लोरेटरी डेटा एनालिसिस और विज़ुअलाइज़ेशन कैसे करें, तथा python scikit-learn पैकेज का उपयोग कर मॉडल बनाना और उसका मूल्यांकन कैसे करें।

मुझे आपके किसी भी फीडबैक या प्रश्न का इंतज़ार रहेगा। आप कमेंट छोड़कर प्रश्न पूछ सकते हैं, और मैं पूरी कोशिश करूँगा कि उसका जवाब दूँ।

यदि आप Python के बारे में और सीखने में रुचि रखते हैं, तो DataCamp का Intermediate Python for Data Science कोर्स देखें।

विषय
Python

Python के बारे में और जानें

{count, plural, one {कोर्स} other {कोर्स}}

इंटरमीडिएट Python

{hours} घंटा
1.4M
Matplotlib से विज़ुअलाइज़ेशन बनाकर और pandas से DataFrames को संभालकर अपने डेटा विज्ञान कौशल बढ़ाएँ।
विवरण देखेंRight Arrow
पाठ्यक्रम शुरू करें

{count, plural, one {कोर्स} other {कोर्स}}

Python में Data Science परिचय

{hours} घंटा
503.6K
Python से डेटा विज्ञान में उतरें और अपने डेटा का प्रभावी विश्लेषण व विज़ुअलाइज़ेशन करना सीखें। कोई कोडिंग अनुभव या कौशल की आवश्यकता नहीं।
और देखेंRight Arrow