Computer >> कंप्यूटर ट्यूटोरियल >  >> सॉफ्टवेयर >> Office

उन्नत डेटा विज्ञान वर्कफ़्लो के लिए हार्नेस एक्सेल और पायथन

उन्नत डेटा विज्ञान वर्कफ़्लो के लिए हार्नेस एक्सेल और पायथन

  <पी> एक्सेल अपनी सरलता और लचीलेपन के कारण कई डेटा विश्लेषकों के लिए एक उपयोगी उपकरण है। लेकिन बड़े, दोहराव वाले या जटिल डेटा कार्यों के लिए, पायथन गति, स्वचालन और उन्नत विश्लेषण प्रदान करता है। एक्सेल को पायथन के साथ एकीकृत करके, आप दोनों दुनियाओं का सर्वश्रेष्ठ लाभ उठा सकते हैं।

<पी> इस ट्यूटोरियल में, हम दिखाएंगे कि एक शक्तिशाली डेटा साइंस वर्कफ़्लो के लिए एक्सेल को पायथन के साथ कैसे जोड़ा जाए।

आवश्यक उपकरण और सेटअप

<पी> एक्सेल को पायथन के साथ संयोजित करने से पहले, पर्यावरण स्थापित करें। यह सुनिश्चित करता है कि आपका वर्कफ़्लो पहले चरण से ही सुचारू और उत्पादक है।

<पी> आवश्यकताएँ:
  • माइक्रोसॉफ्ट एक्सेल :प्रारंभिक डेटा समीक्षा और रिपोर्टिंग के लिए।
  • पायथन 3.x :आपके डेटा विज्ञान वर्कफ़्लो के लिए इंजन।
  • पायथन लाइब्रेरीज़ :
    • पांडा डेटा विश्लेषण के लिए.
    • matplotlib साजिश रचने के लिए.
    • openpyxl (वैकल्पिक, एक्सेल फ़ाइलें लिखने के लिए)।
    • अस्थिर (संख्यात्मक).
    • matplotlib/सीबॉर्न विज़ुअलाइज़ेशन के लिए.
<पी> पायथन लाइब्रेरी स्थापित करें:
pip install pandas matplotlib openpyxl

1. पायथन में डेटा पढ़ें

<पी> आप पांडा का उपयोग करके अपने डेटा को पायथन में लोड कर सकते हैं, जिससे सारणीबद्ध डेटा में हेरफेर और विश्लेषण करना आसान हो जाता है।

import pandas as pd
# Read data from Excel file
df = pd.read_excel('SalesData.xlsx')
# Preview data
print(df.head()) # Show the first 5 rows of the data
print(df.info()) # Show info about columns, datatypes, and missing values
  • pd.read_csv() Excel फ़ाइल को पांडा डेटाफ़्रेम में पढ़ता है।
  • df.head() पहली पांच पंक्तियों को प्रदर्शित करता है, यह त्वरित जांच के लिए बहुत अच्छा है।
  • df.info() पंक्तियों, स्तंभों और डेटाप्रकारों की संख्या दिखाता है।
<पी> आपको अपने विक्रय डेटा की पहली कुछ पंक्तियाँ इस प्रकार के सारांश के साथ दिखाई देंगी:

 TransactionID Date CustomerID ProductID ProductName Category Quantity UnitPrice Region Channel SalesRep
0 100001 2024-01-02 C-100 P-101 Laptop Electronics 2.0 800.0 East Online Smith
1 100002 2024-01-02 C-101 P-102 Printer Electronics 1.0 200.0 West Retail Johnson
2 100003 2024-01-03 C-102 P-103 Mouse Electronics 5.0 25.0 North Online Lee
3 100004 2024-01-04 C-103 P-104 Desk Furniture 1.0 150.0 South Retail Brown
4 100005 2024-01-05 C-104 P-105 Monitor Electronics 3.0 175.0 NaN Online Davis
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 63 entries, 0 to 62
Data columns (total 11 columns):
 # Column Non-Null Count Dtype
--- ------ -------------- -----
 0 TransactionID 63 non-null int64
 1 Date 62 non-null datetime64[ns]
 2 CustomerID 62 non-null object 
 3 ProductID 61 non-null object 
 4 ProductName 63 non-null object 
 5 Category 61 non-null object 
 6 Quantity 61 non-null float64 
 7 UnitPrice 62 non-null float64
 8 Region 62 non-null object
 9 Channel 62 non-null object
 10 SalesRep 62 non-null object
dtypes: datetime64[ns](1), float64(2), int64(1), object(7)
memory usage: 5.5+ KB
None

2. डेटा सफ़ाई और परिवर्तन

<पी> कच्चा डेटा विश्लेषण के लिए शायद ही कभी तैयार होता है। इस चरण में, आप गुम मानों को ठीक करेंगे, कॉलम को सही प्रकार में परिवर्तित करेंगे, और नए परिकलित फ़ील्ड जोड़ेंगे।

<पी> डुप्लिकेट हटाएं:
# Remove Duplicates
df = df.drop_duplicates()
  • डुप्लिकेट मान हटाता है।
<पी> अनुपलब्ध मानों की जाँच करें:
# Print count of missing values per column
print(df.isnull().sum())
  • यह दर्शाता है कि प्रत्येक कॉलम में कितने लुप्त (NaN) मान हैं। यदि कोई पाया जाता है, तो आप उन्हें छोड़ने या भरने का निर्णय ले सकते हैं।
#Output:
TransactionID 0
Date 1
CustomerID 1
ProductID 2
ProductName 0
Category 2
Quantity 2
UnitPrice 1
Region 1
Channel 1
SalesRep 1
dtype: int64
<पी> डेटा प्रकार परिवर्तित करें:
# Convert 'Date' column to pandas datetime type for easier filtering/grouping
df['Date'] = pd.to_datetime(df['Date'])
  • यह आसान फ़िल्टरिंग और ग्रुपिंग के लिए दिनांक कॉलम को टेक्स्ट से पांडा डेटाटाइम प्रारूप में परिवर्तित करता है।
<पी> एक 'कुल बिक्री' कॉलम बनाएं:
# Add a new column: total value for each transaction
df['TotalSales'] = df['Quantity'] * df['UnitPrice']
  • प्रत्येक लेनदेन के लिए कुल मूल्य दिखाने वाला एक नया कॉलम जोड़ता है।
<पी> समय श्रृंखला विश्लेषण के लिए महीना निकालें:
df['Month'] = df['Date'].dt.to_period('M')
  • यह समूह बनाने और महीने के अनुसार बिक्री का विश्लेषण करने के लिए एक महीना कॉलम बनाता है।
  • अब साफ़ किए गए डेटा का पूर्वावलोकन करने के लिए print(df.head()) का उपयोग करें।
#Ouput:
TransactionID Date CustomerID ProductID ProductName Category ... UnitPrice Region Channel SalesRep TotalSales Month
0 100001 2024-01-02 C-100 P-101 Laptop Electronics ... 800.0 East Online Smith 1600.0 2024-01
1 100002 2024-01-02 C-101 P-102 Printer Electronics ... 200.0 West Retail Johnson 200.0 2024-01
2 100003 2024-01-03 C-102 P-103 Mouse Electronics ... 25.0 North Online Lee 125.0 2024-01
3 100004 2024-01-04 C-103 P-104 Desk Furniture ... 150.0 South Retail Brown 150.0 2024-01
4 100005 2024-01-05 C-104 P-105 Monitor Electronics ... 175.0 NaN Online Davis 525.0 2024-01

3. अपने डेटा का विश्लेषण करें

<पी> एक स्वच्छ डेटासेट के साथ, अब आप ऐसी अंतर्दृष्टि उत्पन्न कर सकते हैं जो व्यावसायिक मूल्य को बढ़ाती है। इसमें महीने, उत्पाद और क्षेत्र के अनुसार कुल बिक्री शामिल है।

<पी> माह के अनुसार कुल बिक्री:
# Group by month and sum the total sales for each month
monthly_sales = df.groupby('Month')['TotalSales'].sum()
print(monthly_sales)
  • डेटा को महीने के आधार पर समूहित करता है और प्रत्येक महीने के लिए कुल बिक्री का योग करता है।
#Output:
Month
2024-01 9075.0
2024-02 9800.0
2024-03 9075.0
Freq: M, Name: TotalSales, dtype: float64
<पी> सर्वाधिक बिकने वाले उत्पाद:
# Group by product, sum total sales, and sort from highest to lowest
product_sales = df.groupby('ProductName')['TotalSales'].sum().sort_values(ascending=False)
print(product_sales)
  • प्रति उत्पाद बिक्री का योग, फिर उन्हें सबसे अधिक से कम लोकप्रिय तक क्रमबद्ध करें।
#Output:
ProductName
Laptop 15200.0
Monitor 3850.0
Printer 3200.0
Desk 2550.0
Chair 2325.0
Mouse 1125.0
Name: TotalSales, dtype: float64
<पी> क्षेत्र के अनुसार बिक्री:
# Group by region and sum total sales per region
region_sales = df.groupby('Region')['TotalSales'].sum()
print(region_sales)
  • प्रत्येक क्षेत्र द्वारा कुल बिक्री को एकत्रित करता है।
#Output:
Region
East 6075.0
North 5925.0
South 8225.0
West 7500.0

4. प्रमुख अंतर्दृष्टियों को विज़ुअलाइज़ करें

<पी> विज़ुअलाइज़ किए जाने पर डेटा अधिक शक्तिशाली होता है. आइए आपको और हितधारकों को एक नज़र में प्रमुख रुझानों को समझने में मदद करने के लिए त्वरित चार्ट बनाएं।

4.1. मासिक बिक्री रुझान

import matplotlib.pyplot as plt # Import for plotting
# Create a bar chart of sales by month
monthly_sales.plot(
 kind='bar', 
 title='Total Sales by Month', 
 ylabel='Sales ($)', 
 xlabel='Month'
)
plt.tight_layout() # Avoid label overlap
plt.savefig('monthly_sales.png') # Save the figure as a PNG file
plt.show() # Display the chart
  • मासिक बिक्री को बार चार्ट के रूप में प्लॉट करें।
  • plt.savefig रिपोर्ट के लिए चार्ट सहेजता है
  • एक बार चार्ट हर महीने बिक्री में बदलाव दिखाएगा।
<पी> उन्नत डेटा विज्ञान वर्कफ़्लो के लिए हार्नेस एक्सेल और पायथन

4.2. क्षेत्र के अनुसार बिक्री

# Pie chart of sales by region
region_sales.plot(
 kind='pie', 
 autopct='%1.1f%%', 
 title='Sales Distribution by Region'
)
plt.ylabel('') # Remove default y-label
plt.tight_layout()
plt.savefig('region_sales.png')
plt.show()
  • क्षेत्र के अनुसार बिक्री का पाई चार्ट, प्रबंधन या विपणन के लिए बढ़िया।
<पी> उन्नत डेटा विज्ञान वर्कफ़्लो के लिए हार्नेस एक्सेल और पायथन

5. उन्नत विश्लेषण एवं मॉडलिंग

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

5.1. वर्णनात्मक सांख्यिकी

<पी> वर्णनात्मक आँकड़े आपको आपके डेटासेट का त्वरित सारांश देते हैं, जिसमें संख्यात्मक स्तंभों के लिए साधन, मानक विचलन और मात्राएँ दिखाई जाती हैं।

# Show summary statistics for numeric columns (mean, std, min, max, quartiles, etc.)
print(df.describe())
  • df.describe() सभी संख्यात्मक स्तंभों (जैसे मात्रा, इकाई मूल्य, कुल बिक्री) को शीघ्रता से सारांशित करता है।
#Output:
 TransactionID Quantity UnitPrice TotalSales
count 61.000000 59.000000 60.000000 59.000000
mean 100030.180328 2.542373 262.083333 478.813559
std 17.497150 1.534905 277.339497 527.085627
min 100001.000000 1.000000 25.000000 75.000000
25% 100015.000000 1.000000 75.000000 162.500000
50% 100030.000000 2.000000 175.000000 300.000000
75% 100045.000000 3.000000 200.000000 525.000000
max 100060.000000 7.000000 800.000000 2400.000000

5.2. पांडा में पिवोट टेबल

<पी> एक्सेल में इंटरैक्टिव रिपोर्टिंग के लिए पिवट टेबल शक्तिशाली हैं, और पांडा भी ऐसा कर सकते हैं।

# Create a pivot table: sum TotalSales for each Region
pivot = df.pivot_table(index='Region', values='TotalSales', aggfunc='sum')
print(pivot)
  • pivot_table() एक्सेल की पिवट टेबल के समान, प्रत्येक क्षेत्र के लिए कुल बिक्री का सारांश देता है।
#Output
 TotalSales
Region
East 6075.0
North 5925.0
South 8225.0
West 7500.0

5.3. सरल मशीन लर्निंग उदाहरण

<पी> आइए देखें कि क्या हम एक साधारण रैखिक प्रतिगमन (मशीन लर्निंग) मॉडल का उपयोग करके बेची गई मात्रा से कुल बिक्री का अनुमान लगा सकते हैं।

from sklearn.linear_model import LinearRegression # Import linear regression from scikit-learn
# Prepare features and target variable
X = df[['Quantity']] # Feature: Quantity sold
y = df['TotalSales'] # Target: Total sales value
# Create and fit the regression model
model = LinearRegression()
model.fit(X, y)
# Print the regression coefficient (slope)
print('Coefficient:', model.coef_)
# Print the intercept (base value when Quantity=0)
print('Intercept:', model.intercept_)
  • स्किकिट-लर्न से लीनियर रिग्रेशन आयात करता है।
  • कुल बिक्री का अनुमान लगाने के लिए मात्रा का उपयोग करता है।
  • मॉडल में फिट बैठता है और गुणांक प्रिंट करता है (प्रति अतिरिक्त यूनिट बेची गई बिक्री में कितनी वृद्धि हुई)।
#Output:
Coefficient: [-37.65294772]
Intercept: 596.8483500185391

6. साफ़/विश्लेषित डेटा को एक्सेल में वापस निर्यात करें

<पी> अपने डेटा को साफ करने, विश्लेषण करने और मॉडलिंग करने के बाद, आप अपनी सारांश तालिकाओं और अंतर्दृष्टि को मल्टी-शीट एक्सेल फ़ाइल में निर्यात कर सकते हैं। यह आपके सभी प्रमुख निष्कर्षों को एक साथ रखता है और Excel में समीक्षा के लिए तैयार रखता है।

# Export summary and advanced analysis tables to a multi-sheet Excel file
with pd.ExcelWriter('sales_summary.xlsx') as writer:
 # Monthly summary
 monthly_sales.to_frame().to_excel(writer, sheet_name='Monthly Sales')
 # Product summary
 product_sales.to_frame().to_excel(writer, sheet_name='Product Sales')
 # Region summary
 region_sales.to_frame().to_excel(writer, sheet_name='Region Sales')
 # Pivot table (total sales by region)
 pivot.to_excel(writer, sheet_name='Pivot Table')
 # Optionally, you can export descriptive statistics
 df.describe().to_excel(writer, sheet_name='Descriptive Stats')
  • संदर्भ प्रबंधक (... लेखक के रूप में): यह सुनिश्चित करता है कि एक्सेल फ़ाइल ठीक से सहेजी गई है और लिखने के बाद बंद कर दी गई है।
  • .to_excel() प्रत्येक तालिका के लिए: आसान पहुंच के लिए प्रत्येक डेटाफ़्रेम या सारांश को उसकी अपनी शीट में सहेजता है।
  • कस्टम शीट नाम: प्रत्येक शीट को स्पष्टता के लिए नाम दिया गया है, जो आपके विश्लेषण चरणों से मेल खाता है।
<पी> उन्नत डेटा विज्ञान वर्कफ़्लो के लिए हार्नेस एक्सेल और पायथन

  • sales_summary.xlsx खोलें एक्सेल में.
  • आपको मासिक बिक्री, उत्पाद बिक्री, क्षेत्र बिक्री, आपकी पिवट तालिका और वर्णनात्मक सांख्यिकी के लिए अलग-अलग शीट दिखाई देंगी।
<पी> उन्नत डेटा विज्ञान वर्कफ़्लो के लिए हार्नेस एक्सेल और पायथन

7. अपने वर्कफ़्लो को स्वचालित और स्केल करें

<पी> पायथन का उपयोग करके, आप आवर्ती रिपोर्ट या विश्लेषण को स्वचालित कर सकते हैं।  अगली बार जब आपको कोई नई एक्सेल फ़ाइल मिले, तो बस फ़ाइल को बदल दें और अपनी स्क्रिप्ट को फिर से चलाएँ; सभी विश्लेषण और रिपोर्ट तुरंत ताज़ा हो जाती हैं।

  • सभी विश्लेषण कोड को एक Python फ़ाइल में रखें।
  • अपनी रिपोर्ट अपडेट करने के लिए, CSV बदलें और चलाएँ:
python Excel_to_Python.py
<पी> उन्नत डेटा विज्ञान वर्कफ़्लो के लिए हार्नेस एक्सेल और पायथन

  • और अधिक शक्ति के लिए, आप इसे साप्ताहिक/मासिक कार्य के रूप में शेड्यूल कर सकते हैं।

निष्कर्ष

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

समाधान के साथ निःशुल्क उन्नत एक्सेल अभ्यास प्राप्त करें!
  1. संपर्क गोपनीयता संबंध कैसे सेट करें और व्यवसाय के लिए Skype में किसी को ब्लॉक करें संपर्क गोपनीयता संबंध कैसे सेट करें और व्यवसाय के लिए Skype में किसी को ब्लॉक करें

    व्यवसाय के लिए Skype . में , गोपनीयता संबंधों से संपर्क करें सेटिंग की मदद से आप नियंत्रित कर सकते हैं कि आपकी ऑनलाइन जानकारी का कितना हिस्सा दूसरों को दिखाई देना चाहिए. मूल रूप से, यह सुविधा आपके संपर्कों को विभिन्न संबंध श्रेणियों में व्यवस्थित करती है जैसे: सहयोगी बाहरी संपर्क कार्यसमूह दोस्त और

  1. 5 कारण Google क्रोम पर मोज़िला फ़ायरफ़ॉक्स चुनने के लिए 5 कारण Google क्रोम पर मोज़िला फ़ायरफ़ॉक्स चुनने के लिए

    कुछ समय के लिए क्रोम सबसे सुरक्षित और तेज ब्राउज़र रहा है। दूसरी ओर, मोज़िला फ़ायरफ़ॉक्स यह कैसे दिखता है और कैसे संचालित होता है, इस पर बहुत अधिक नियंत्रण प्रदान करता है। क्रोम दुनिया भर में 56% उपयोगकर्ताओं के साथ ब्राउज़र किंग रहा है। हालांकि, ऐसा लगता है कि इस प्रवृत्ति में बदलाव हो सकता है। फ़ा

  1. Google डॉक्स वॉयस टाइपिंग काम नहीं कर रही? इन 6 सिद्ध समाधानों को आज़माएँ Google डॉक्स वॉयस टाइपिंग काम नहीं कर रही? इन 6 सिद्ध समाधानों को आज़माएँ

    जब आपको तुरंत नोट्स लेने की आवश्यकता हो तो Google डॉक्स पर वॉयस टाइपिंग एक उपयोगी सुविधा है। Google के स्पीच-टू-टेक्स्ट का उपयोग करके, आप अपने नोट्स को अल्पविराम जैसे सटीक फ़ॉर्मेटिंग विकल्पों के साथ निर्देशित कर सकते हैं और नए पैराग्राफ जोड़ सकते हैं। दुर्भाग्य से, ध्वनि टाइपिंग सुविधा में कभी-कभी