ಡೇಟಾ ವಿಶ್ಲೇಷಣೆಗಾಗಿ Pandas GroupBy ನ ಶಕ್ತಿಯನ್ನು ಅನಾವರಣಗೊಳಿಸಿ. ಈ ಮಾರ್ಗದರ್ಶಿ ಅಂತರರಾಷ್ಟ್ರೀಯ ಡೇಟಾಕ್ಕಾಗಿ ಪ್ರಾಯೋಗಿಕ ಉದಾಹರಣೆಗಳೊಂದಿಗೆ ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಮತ್ತು ರೂಪಾಂತರ ತಂತ್ರಗಳನ್ನು ಅನ್ವೇಷಿಸುತ್ತದೆ.
Pandas GroupBy ಕಾರ್ಯಾಚರಣೆಗಳಲ್ಲಿ ಪಾಂಡಿತ್ಯ: ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ (Aggregation) ವಿರುದ್ಧ ರೂಪಾಂತರ (Transformation)
ಪೈಥಾನ್ನಲ್ಲಿ ಡೇಟಾ ಮ್ಯಾನಿಪ್ಯುಲೇಷನ್ಗೆ ಆಧಾರವಾಗಿರುವ Pandas, ಡೇಟಾವನ್ನು ವಿಶ್ಲೇಷಿಸಲು ಮತ್ತು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಪ್ರಬಲ ಸಾಧನವನ್ನು ಒದಗಿಸುತ್ತದೆ: ದ GroupBy ಕಾರ್ಯಾಚರಣೆ. ಈ ವೈಶಿಷ್ಟ್ಯವು ಸಾಮಾನ್ಯ ಗುಣಲಕ್ಷಣಗಳ ಆಧಾರದ ಮೇಲೆ ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಗುಂಪುಗಳಾಗಿ ವಿಭಜಿಸಲು ಮತ್ತು ನಂತರ ಈ ಗುಂಪುಗಳಿಗೆ ಕಾರ್ಯಗಳನ್ನು ಅನ್ವಯಿಸಲು ಅನುಮತಿಸುತ್ತದೆ, ಇದರಿಂದಾಗಿ ಮರೆಮಾಡಿದ ಒಳನೋಟಗಳನ್ನು ಬಹಿರಂಗಪಡಿಸುತ್ತದೆ. ಈ ಲೇಖನವು ಎರಡು ಪ್ರಮುಖ GroupBy ಕಾರ್ಯಾಚರಣೆಗಳಾದ ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ (aggregation) ಮತ್ತು ರೂಪಾಂತರ (transformation) ಕುರಿತು ಆಳವಾಗಿ ತಿಳಿಸುತ್ತದೆ, ಡೇಟಾ ವೃತ್ತಿಪರರಿಗೆ ಸೂಕ್ತವಾದ ಪ್ರಾಯೋಗಿಕ ಉದಾಹರಣೆಗಳು ಮತ್ತು ವಿವರಣೆಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ.
GroupBy ಪರಿಕಲ್ಪನೆಯನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು
ಅದರ ತಿರುಳಿನಲ್ಲಿ, GroupBy ಮೂರು ಮುಖ್ಯ ಹಂತಗಳನ್ನು ಒಳಗೊಂಡಿರುವ ಪ್ರಕ್ರಿಯೆಯಾಗಿದೆ: ಒಂದು ಅಥವಾ ಹೆಚ್ಚಿನ ಮಾನದಂಡಗಳ ಆಧಾರದ ಮೇಲೆ ಡೇಟಾವನ್ನು ಗುಂಪುಗಳಾಗಿ ವಿಭಜಿಸುವುದು (splitting), ಪ್ರತಿ ಗುಂಪಿಗೆ ಸ್ವತಂತ್ರವಾಗಿ ಕಾರ್ಯವನ್ನು ಅನ್ವಯಿಸುವುದು (applying), ಮತ್ತು ಫಲಿತಾಂಶಗಳನ್ನು ಹೊಸ ಡೇಟಾ ರಚನೆಗೆ ಸಂಯೋಜಿಸುವುದು (combining). ಈ "ವಿಭಜಿಸಿ-ಅನ್ವಯಿಸಿ-ಸಂಯೋಜಿಸಿ" (split-apply-combine) ತಂತ್ರವು ಡೇಟಾ ವಿಶ್ಲೇಷಣೆಯಲ್ಲಿ ಒಂದು ಮೂಲಭೂತ ಪರಿಕಲ್ಪನೆಯಾಗಿದೆ ಮತ್ತು ಸಂಕೀರ್ಣ ಡೇಟಾಸೆಟ್ಗಳನ್ನು ಅನ್ವೇಷಿಸಲು ಒಂದು ಹೊಂದಿಕೊಳ್ಳುವ ಚೌಕಟ್ಟನ್ನು ಒದಗಿಸುತ್ತದೆ.
GroupBy ನ ಶಕ್ತಿಯು ವಿವಿಧ ಡೇಟಾ ಪ್ರಕಾರಗಳು ಮತ್ತು ರಚನೆಗಳನ್ನು ನಿರ್ವಹಿಸುವ ಸಾಮರ್ಥ್ಯದಲ್ಲಿದೆ, ಇದು ವೈವಿಧ್ಯಮಯ ಡೊಮೇನ್ಗಳಲ್ಲಿ ಅನ್ವಯವಾಗುವಂತೆ ಮಾಡುತ್ತದೆ. ನೀವು ಬಹು ಪ್ರದೇಶಗಳಿಂದ ಮಾರಾಟ ಡೇಟಾವನ್ನು, ವಿವಿಧ ಸಾಧನಗಳಿಂದ ಸಂವೇದಕ ರೀಡಿಂಗ್ಗಳನ್ನು ಅಥವಾ ಜನಸಂಖ್ಯಾಶಾಸ್ತ್ರದಾದ್ಯಂತ ಸಾಮಾಜಿಕ ಮಾಧ್ಯಮ ಚಟುವಟಿಕೆಯನ್ನು ವಿಶ್ಲೇಷಿಸುತ್ತಿರಲಿ, GroupBy ನಿಮಗೆ ಅರ್ಥಪೂರ್ಣ ಒಳನೋಟಗಳನ್ನು ಹೊರತೆಗೆಯಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ (Aggregation): ಗುಂಪುಗಳೊಳಗಿನ ಡೇಟಾವನ್ನು ಸಾರಾಂಶಗೊಳಿಸುವುದು
ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ (Aggregation) ಎಂದರೆ ಪ್ರತಿ ಗುಂಪಿಗೆ ಸಾರಾಂಶ ಅಂಕಿಅಂಶಗಳನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುವ ಪ್ರಕ್ರಿಯೆ. ಈ ಅಂಕಿಅಂಶಗಳು ಗುಂಪಿನ ಗುಣಲಕ್ಷಣಗಳ ಸಂಕ್ಷಿಪ್ತ ಅವಲೋಕನವನ್ನು ಒದಗಿಸುತ್ತವೆ, ನಿಮ್ಮ ಡೇಟಾದ ವಿವಿಧ ವಿಭಾಗಗಳನ್ನು ಹೋಲಿಸಲು ಮತ್ತು ವ್ಯತಿರಿಕ್ತಗೊಳಿಸಲು ನಿಮಗೆ ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಸಾಮಾನ್ಯ ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಕಾರ್ಯಗಳು ಸೇರಿವೆ:
sum(): ಪ್ರತಿ ಗುಂಪಿನೊಳಗಿನ ಮೌಲ್ಯಗಳ ಮೊತ್ತವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುತ್ತದೆ.mean(): ಪ್ರತಿ ಗುಂಪಿನೊಳಗಿನ ಸರಾಸರಿ ಮೌಲ್ಯವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುತ್ತದೆ.median(): ಪ್ರತಿ ಗುಂಪಿನೊಳಗಿನ ಮಧ್ಯಮ ಮೌಲ್ಯವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುತ್ತದೆ.min(): ಪ್ರತಿ ಗುಂಪಿನೊಳಗಿನ ಕನಿಷ್ಠ ಮೌಲ್ಯವನ್ನು ಕಂಡುಹಿಡಿಯುತ್ತದೆ.max(): ಪ್ರತಿ ಗುಂಪಿನೊಳಗಿನ ಗರಿಷ್ಠ ಮೌಲ್ಯವನ್ನು ಕಂಡುಹಿಡಿಯುತ್ತದೆ.count(): ಪ್ರತಿ ಗುಂಪಿನೊಳಗಿನ ಶೂನ್ಯವಲ್ಲದ (non-null) ಮೌಲ್ಯಗಳ ಸಂಖ್ಯೆಯನ್ನು ಎಣಿಸುತ್ತದೆ.size(): ಪ್ರತಿ ಗುಂಪಿನ ಗಾತ್ರವನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ (ಶೂನ್ಯ ಮೌಲ್ಯಗಳನ್ನು ಒಳಗೊಂಡಂತೆ).std(): ಪ್ರತಿ ಗುಂಪಿನೊಳಗಿನ ಸ್ಟ್ಯಾಂಡರ್ಡ್ ವಿಚಲನವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುತ್ತದೆ.var(): ಪ್ರತಿ ಗುಂಪಿನೊಳಗಿನ ವ್ಯತ್ಯಾಸವನ್ನು (variance) ಲೆಕ್ಕಾಚಾರ ಮಾಡುತ್ತದೆ.
ಒಟ್ಟುಗೂಡಿಸುವಿಕೆಯ ಪ್ರಾಯೋಗಿಕ ಉದಾಹರಣೆಗಳು
ಕಾಲ್ಪನಿಕ ಇ-ಕಾಮರ್ಸ್ ಕಂಪನಿಯ ಅಂತರರಾಷ್ಟ್ರೀಯ ಮಾರಾಟದ ಡೇಟಾಸೆಟ್ ಅನ್ನು ಪರಿಗಣಿಸೋಣ. ಡೇಟಾವು ಉತ್ಪನ್ನ ವರ್ಗ, ಮಾರಾಟವಾದ ದೇಶ ಮತ್ತು ಮಾರಾಟದ ಮೊತ್ತದ ಮಾಹಿತಿಯನ್ನು ಒಳಗೊಂಡಿದೆ.
import pandas as pd
# Sample data
data = {
'Category': ['Electronics', 'Clothing', 'Electronics', 'Clothing', 'Home Goods', 'Electronics', 'Clothing', 'Home Goods'],
'Country': ['USA', 'UK', 'Canada', 'USA', 'Germany', 'UK', 'Canada', 'Germany'],
'Sales': [100, 50, 75, 60, 80, 90, 45, 70]
}
df = pd.DataFrame(data)
print(df)
ಇದು ಈ ಕೆಳಗಿನಂತೆ ಔಟ್ಪುಟ್ ನೀಡುತ್ತದೆ:
Category Country Sales
0 Electronics USA 100
1 Clothing UK 50
2 Electronics Canada 75
3 Clothing USA 60
4 Home Goods Germany 80
5 Electronics UK 90
6 Clothing Canada 45
7 Home Goods Germany 70
ಉದಾಹರಣೆ 1: ಪ್ರತಿ ವರ್ಗಕ್ಕೆ ಒಟ್ಟು ಮಾರಾಟವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುವುದು
ಪ್ರತಿ ಉತ್ಪನ್ನ ವರ್ಗದ ಒಟ್ಟು ಮಾರಾಟವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡಲು, ನಾವು groupby() ವಿಧಾನವನ್ನು ಮತ್ತು ನಂತರ sum() ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಕಾರ್ಯವನ್ನು ಬಳಸಬಹುದು.
category_sales = df.groupby('Category')['Sales'].sum()
print(category_sales)
ಇದು ಈ ಕೆಳಗಿನಂತೆ ಔಟ್ಪುಟ್ ನೀಡುತ್ತದೆ:
Category
Clothing 155
Electronics 265
Home Goods 150
Name: Sales, dtype: int64
ಉದಾಹರಣೆ 2: ಪ್ರತಿ ದೇಶಕ್ಕೆ ಸರಾಸರಿ ಮಾರಾಟವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುವುದು
ಅದೇ ರೀತಿ, ಪ್ರತಿ ದೇಶಕ್ಕೆ ಸರಾಸರಿ ಮಾರಾಟವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡಲು, ನಾವು mean() ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಕಾರ್ಯವನ್ನು ಬಳಸಬಹುದು.
country_sales = df.groupby('Country')['Sales'].mean()
print(country_sales)
ಇದು ಈ ಕೆಳಗಿನಂತೆ ಔಟ್ಪುಟ್ ನೀಡುತ್ತದೆ:
Country
Canada 60.0
Germany 75.0
UK 70.0
USA 80.0
Name: Sales, dtype: float64
ಉದಾಹರಣೆ 3: ಬಹು ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಕಾರ್ಯಗಳನ್ನು ಬಳಸುವುದು
Pandas agg() ವಿಧಾನವನ್ನು ಬಳಸಿಕೊಂಡು ಏಕಕಾಲದಲ್ಲಿ ಬಹು ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಕಾರ್ಯಗಳನ್ನು ಅನ್ವಯಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಇದು ಗುಂಪಿನ ಗುಣಲಕ್ಷಣಗಳ ಸಮಗ್ರ ಸಾರಾಂಶವನ್ನು ಒದಗಿಸುತ್ತದೆ.
category_summary = df.groupby('Category')['Sales'].agg(['sum', 'mean', 'median', 'count'])
print(category_summary)
ಇದು ಈ ಕೆಳಗಿನಂತೆ ಔಟ್ಪುಟ್ ನೀಡುತ್ತದೆ:
sum mean median count
Category
Clothing 155 51.666667 50.0 3
Electronics 265 88.333333 90.0 3
Home Goods 150 75.000000 75.0 2
ಉದಾಹರಣೆ 4: ಕಸ್ಟಮ್ ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಕಾರ್ಯಗಳು
ಲ್ಯಾಂಬ್ಡಾ ಎಕ್ಸ್ಪ್ರೆಶನ್ಗಳು (lambda expressions) ಅಥವಾ ಹೆಸರಿಸಿದ ಕಾರ್ಯಗಳನ್ನು (named functions) ಬಳಸಿಕೊಂಡು ನಿಮ್ಮದೇ ಆದ ಕಸ್ಟಮ್ ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಕಾರ್ಯಗಳನ್ನು ಸಹ ನೀವು ವ್ಯಾಖ್ಯಾನಿಸಬಹುದು. ಇದು ಪ್ರಮಾಣಿತ ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಕಾರ್ಯಗಳಲ್ಲಿ ಲಭ್ಯವಿಲ್ಲದ ನಿರ್ದಿಷ್ಟ ಅಂಕಿಅಂಶಗಳನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ.
# Custom function to calculate the range (max - min)
def custom_range(x):
return x.max() - x.min()
category_summary = df.groupby('Category')['Sales'].agg(['sum', 'mean', custom_range])
print(category_summary)
ಇದು ಈ ಕೆಳಗಿನಂತೆ ಔಟ್ಪುಟ್ ನೀಡುತ್ತದೆ:
sum mean custom_range
Category
Clothing 155 51.666667 15
Electronics 265 88.333333 25
Home Goods 150 75.000000 10
ರೂಪಾಂತರ (Transformation): ಗುಂಪುಗಳೊಳಗಿನ ಡೇಟಾವನ್ನು ಮಾರ್ಪಡಿಸುವುದು
ರೂಪಾಂತರ (Transformation) ಮತ್ತೊಂದೆಡೆ, ಕೆಲವು ಲೆಕ್ಕಾಚಾರದ ಆಧಾರದ ಮೇಲೆ ಪ್ರತಿ ಗುಂಪಿನೊಳಗಿನ ಡೇಟಾವನ್ನು ಮಾರ್ಪಡಿಸುವುದನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ. ಪ್ರತಿ ಗುಂಪಿಗೆ ಸಾರಾಂಶ ಮೌಲ್ಯವನ್ನು ಹಿಂದಿರುಗಿಸುವ ಒಟ್ಟುಗೂಡಿಸುವಿಕೆಗಿಂತ ಭಿನ್ನವಾಗಿ, ರೂಪಾಂತರವು ಮೂಲ ಡೇಟಾದ ಪ್ರತಿ ಸಾಲಿಗೆ ಮೌಲ್ಯವನ್ನು ಹಿಂದಿರುಗಿಸುತ್ತದೆ, ಆದರೆ ಆ ಸಾಲು ಸೇರಿರುವ ಗುಂಪಿನ ಆಧಾರದ ಮೇಲೆ ಮೌಲ್ಯವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡಲಾಗುತ್ತದೆ. ರೂಪಾಂತರ ಕಾರ್ಯಾಚರಣೆಗಳು ಡೇಟಾಫ್ರೇಮ್ನ ಮೂಲ ಸೂಚ್ಯಂಕ ಮತ್ತು ಆಕಾರವನ್ನು ಉಳಿಸಿಕೊಳ್ಳುತ್ತವೆ.
ರೂಪಾಂತರಕ್ಕಾಗಿ ಸಾಮಾನ್ಯ ಬಳಕೆಯ ಸಂದರ್ಭಗಳು ಸೇರಿವೆ:
- ಪ್ರತಿ ಗುಂಪಿನೊಳಗಿನ ಡೇಟಾವನ್ನು ಪ್ರಮಾಣೀಕರಿಸುವುದು.
- ಪ್ರತಿ ಗುಂಪಿನೊಳಗಿನ ಶ್ರೇಣಿ (rank) ಅಥವಾ ಪರ್ಸೆಂಟೈಲ್ ಅನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುವುದು.
- ಗುಂಪಿನ ಅಂಕಿಅಂಶಗಳ ಆಧಾರದ ಮೇಲೆ ಕಾಣೆಯಾದ ಮೌಲ್ಯಗಳನ್ನು ಭರ್ತಿ ಮಾಡುವುದು.
ರೂಪಾಂತರದ ಪ್ರಾಯೋಗಿಕ ಉದಾಹರಣೆಗಳು
ನಮ್ಮ ಅಂತರರಾಷ್ಟ್ರೀಯ ಮಾರಾಟ ಡೇಟಾವನ್ನು ಮುಂದುವರಿಸೋಣ. ಪ್ರತಿ ದೇಶದೊಳಗಿನ ಮಾರಾಟದ ಅಂಕಿಅಂಶಗಳಿಗೆ ಸಂಬಂಧಿಸಿದ ಲೆಕ್ಕಾಚಾರಗಳನ್ನು ನಿರ್ವಹಿಸಲು ನಾವು ರೂಪಾಂತರವನ್ನು ಅನ್ವಯಿಸಬಹುದು.
ಉದಾಹರಣೆ 1: ಪ್ರತಿ ದೇಶದೊಳಗಿನ ಮಾರಾಟದ ಡೇಟಾವನ್ನು ಪ್ರಮಾಣೀಕರಿಸುವುದು (Z-score)
ಡೇಟಾವನ್ನು ಪ್ರಮಾಣೀಕರಿಸುವುದು (standardizing) ಎಂದರೆ ಮೌಲ್ಯಗಳನ್ನು 0 ರ ಸರಾಸರಿ ಮತ್ತು 1 ರ ಸ್ಟ್ಯಾಂಡರ್ಡ್ ವಿಚಲನವನ್ನು ಹೊಂದಿರುವಂತೆ ಪರಿವರ್ತಿಸುವುದು. ವಿವಿಧ ಸ್ಕೇಲ್ಗಳು ಮತ್ತು ವಿತರಣೆಗಳಾದ್ಯಂತ ಡೇಟಾವನ್ನು ಹೋಲಿಸಲು ಇದು ಉಪಯುಕ್ತವಾಗಿದೆ. ಇದನ್ನು ಸಾಧಿಸಲು ನಾವು transform() ವಿಧಾನವನ್ನು ಲ್ಯಾಂಬ್ಡಾ ಎಕ್ಸ್ಪ್ರೆಶನ್ನೊಂದಿಗೆ ಬಳಸಬಹುದು.
from scipy.stats import zscore
df['Sales_Zscore'] = df.groupby('Country')['Sales'].transform(zscore)
print(df)
ಇದು ಈ ಕೆಳಗಿನಂತೆ ಔಟ್ಪುಟ್ ನೀಡುತ್ತದೆ:
Category Country Sales Sales_Zscore
0 Electronics USA 100 1.000000
1 Clothing UK 50 -1.000000
2 Electronics Canada 75 1.000000
3 Clothing USA 60 -1.000000
4 Home Goods Germany 80 1.000000
5 Electronics UK 90 1.000000
6 Clothing Canada 45 -1.000000
7 Home Goods Germany 70 -1.000000
Sales_Zscore ಕಾಲಮ್ ಈಗ ಪ್ರತಿ ದೇಶದ ಪ್ರಮಾಣಿತ ಮಾರಾಟದ ಮೌಲ್ಯಗಳನ್ನು ಒಳಗೊಂಡಿದೆ. 0 ಕ್ಕಿಂತ ಹೆಚ್ಚಿನ ಮೌಲ್ಯಗಳು ಆ ದೇಶದ ಸರಾಸರಿ ಮಾರಾಟಕ್ಕಿಂತ ಹೆಚ್ಚಾಗಿವೆ, ಮತ್ತು 0 ಕ್ಕಿಂತ ಕಡಿಮೆ ಮೌಲ್ಯಗಳು ಸರಾಸರಿಗಿಂತ ಕಡಿಮೆ ಇವೆ.
ಉದಾಹರಣೆ 2: ಪ್ರತಿ ವರ್ಗದೊಳಗಿನ ಮಾರಾಟದ ಶ್ರೇಣಿಯನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುವುದು
ಪ್ರತಿ ಮಾರಾಟದ ಶ್ರೇಣಿಯನ್ನು ಅದರ ವರ್ಗದೊಳಗೆ ಲೆಕ್ಕಾಚಾರ ಮಾಡಲು, ನಾವು transform() ಕಾರ್ಯದೊಳಗೆ rank() ವಿಧಾನವನ್ನು ಬಳಸಬಹುದು.
df['Sales_Rank'] = df.groupby('Category')['Sales'].transform(lambda x: x.rank(method='dense'))
print(df)
ಇದು ಈ ಕೆಳಗಿನಂತೆ ಔಟ್ಪುಟ್ ನೀಡುತ್ತದೆ:
Category Country Sales Sales_Zscore Sales_Rank
0 Electronics USA 100 1.000000 3.0
1 Clothing UK 50 -1.000000 2.0
2 Electronics Canada 75 1.000000 1.0
3 Clothing USA 60 -1.000000 3.0
4 Home Goods Germany 80 1.000000 2.0
5 Electronics UK 90 1.000000 2.0
6 Clothing Canada 45 -1.000000 1.0
7 Home Goods Germany 70 -1.000000 1.0
Sales_Rank ಕಾಲಮ್ ತನ್ನದೇ ಆದ ವರ್ಗದೊಳಗಿನ ಪ್ರತಿ ಮಾರಾಟದ ಶ್ರೇಣಿಯನ್ನು ಸೂಚಿಸುತ್ತದೆ. ದ `method='dense'` ಆರ್ಗ್ಯುಮೆಂಟ್ ಸತತ ಶ್ರೇಣಿಗಳನ್ನು ಅಂತರವಿಲ್ಲದೆ ನಿಗದಿಪಡಿಸಲಾಗಿದೆ ಎಂದು ಖಚಿತಪಡಿಸುತ್ತದೆ.
ಉದಾಹರಣೆ 3: ಗುಂಪಿನ ಸರಾಸರಿಯ ಆಧಾರದ ಮೇಲೆ ಕಾಣೆಯಾದ ಮೌಲ್ಯಗಳನ್ನು ಭರ್ತಿ ಮಾಡುವುದು
ಮಾರಾಟದ ಡೇಟಾದಲ್ಲಿ ಕೆಲವು ಕಾಣೆಯಾದ ಮೌಲ್ಯಗಳನ್ನು ಸೇರಿಸೋಣ ಮತ್ತು ನಂತರ ಪ್ರತಿ ದೇಶದ ಸರಾಸರಿ ಮಾರಾಟದ ಆಧಾರದ ಮೇಲೆ ಅವುಗಳನ್ನು ಭರ್ತಿ ಮಾಡೋಣ.
import numpy as np
# Introduce missing values
df.loc[[0, 3], 'Sales'] = np.nan
print(df)
# Fill missing values based on country mean
df['Sales_Filled'] = df['Sales'].fillna(df.groupby('Country')['Sales'].transform('mean'))
print(df)
ಕಾಣೆಯಾದ ಮೌಲ್ಯಗಳೊಂದಿಗಿನ ಆರಂಭಿಕ ಡೇಟಾಫ್ರೇಮ್ ಹೀಗಿರುತ್ತದೆ:
Category Country Sales Sales_Zscore Sales_Rank
0 Electronics USA NaN 1.000000 3.0
1 Clothing UK 50 -1.000000 2.0
2 Electronics Canada 75 1.000000 1.0
3 Clothing USA NaN -1.000000 3.0
4 Home Goods Germany 80 1.000000 2.0
5 Electronics UK 90 1.000000 2.0
6 Clothing Canada 45 -1.000000 1.0
7 Home Goods Germany 70 -1.000000 1.0
ಮತ್ತು ಕಾಣೆಯಾದ ಮೌಲ್ಯಗಳನ್ನು ಭರ್ತಿ ಮಾಡಿದ ನಂತರ:
Category Country Sales Sales_Zscore Sales_Rank Sales_Filled
0 Electronics USA NaN 1.000000 3.0 NaN
1 Clothing UK 50 -1.000000 2.0 50.0
2 Electronics Canada 75 1.000000 1.0 75.0
3 Clothing USA NaN -1.000000 3.0 NaN
4 Home Goods Germany 80 1.000000 2.0 80.0
5 Electronics UK 90 1.000000 2.0 90.0
6 Clothing Canada 45 -1.000000 1.0 45.0
7 Home Goods Germany 70 -1.000000 1.0 70.0
ಪ್ರಮುಖ ಗಮನಿಸಿ: Because there was no existing mean for `USA` the resulting values in `Sales_Filled` are `NaN`. ಇಂತಹ ಅಂಚಿನ ಪ್ರಕರಣಗಳನ್ನು ನಿರ್ವಹಿಸುವುದು ವಿಶ್ವಾಸಾರ್ಹ ಡೇಟಾ ವಿಶ್ಲೇಷಣೆಗೆ ನಿರ್ಣಾಯಕವಾಗಿದೆ ಮತ್ತು ಅನುಷ್ಠಾನದ ಸಮಯದಲ್ಲಿ ಪರಿಗಣಿಸಬೇಕು.
ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ (Aggregation) ವಿರುದ್ಧ ರೂಪಾಂತರ (Transformation): ಪ್ರಮುಖ ವ್ಯತ್ಯಾಸಗಳು
ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಮತ್ತು ರೂಪಾಂತರ ಎರಡೂ ಪ್ರಬಲ GroupBy ಕಾರ್ಯಾಚರಣೆಗಳಾಗಿದ್ದರೂ, ಅವು ವಿಭಿನ್ನ ಉದ್ದೇಶಗಳನ್ನು ಪೂರೈಸುತ್ತವೆ ಮತ್ತು ವಿಶಿಷ್ಟ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಹೊಂದಿವೆ:
- ಔಟ್ಪುಟ್ ಆಕಾರ (Output Shape): ಒಟ್ಟುಗೂಡಿಸುವಿಕೆಯು ಡೇಟಾದ ಗಾತ್ರವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ, ಪ್ರತಿ ಗುಂಪಿಗೆ ಒಂದೇ ಮೌಲ್ಯವನ್ನು ಹಿಂದಿರುಗಿಸುತ್ತದೆ. ರೂಪಾಂತರವು ಮೂಲ ಡೇಟಾ ಗಾತ್ರವನ್ನು ಉಳಿಸಿಕೊಳ್ಳುತ್ತದೆ, ಪ್ರತಿ ಸಾಲಿಗೆ ರೂಪಾಂತರಗೊಂಡ ಮೌಲ್ಯವನ್ನು ಹಿಂದಿರುಗಿಸುತ್ತದೆ.
- ಉದ್ದೇಶ (Purpose): ಒಟ್ಟುಗೂಡಿಸುವಿಕೆಯನ್ನು ಡೇಟಾವನ್ನು ಸಾರಾಂಶಗೊಳಿಸಲು ಮತ್ತು ಗುಂಪಿನ ಗುಣಲಕ್ಷಣಗಳ ಬಗ್ಗೆ ಒಳನೋಟಗಳನ್ನು ಪಡೆಯಲು ಬಳಸಲಾಗುತ್ತದೆ. ರೂಪಾಂತರವನ್ನು ಗುಂಪುಗಳೊಳಗಿನ ಡೇಟಾವನ್ನು ಮಾರ್ಪಡಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ, ಹೆಚ್ಚಾಗಿ ಪ್ರಮಾಣೀಕರಣ ಅಥವಾ ಸಾಮಾನ್ಯೀಕರಣಕ್ಕಾಗಿ.
- ರಿಟರ್ನ್ ಮೌಲ್ಯ (Return Value): ಒಟ್ಟುಗೂಡಿಸುವಿಕೆಯು ಒಟ್ಟುಗೂಡಿಸಿದ ಮೌಲ್ಯಗಳೊಂದಿಗೆ ಹೊಸ ಡೇಟಾಫ್ರೇಮ್ ಅಥವಾ ಸರಣಿಯನ್ನು ಹಿಂದಿರುಗಿಸುತ್ತದೆ. ರೂಪಾಂತರವು ರೂಪಾಂತರಗೊಂಡ ಮೌಲ್ಯಗಳೊಂದಿಗೆ ಸರಣಿಯನ್ನು ಹಿಂದಿರುಗಿಸುತ್ತದೆ, ಇದನ್ನು ನಂತರ ಮೂಲ ಡೇಟಾಫ್ರೇಮ್ಗೆ ಹೊಸ ಕಾಲಮ್ ಆಗಿ ಸೇರಿಸಬಹುದು.
ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಮತ್ತು ರೂಪಾಂತರದ ನಡುವೆ ಆಯ್ಕೆ ಮಾಡುವುದು ನಿಮ್ಮ ನಿರ್ದಿಷ್ಟ ವಿಶ್ಲೇಷಣಾತ್ಮಕ ಗುರಿಗಳನ್ನು ಅವಲಂಬಿಸಿರುತ್ತದೆ. ನೀವು ಡೇಟಾವನ್ನು ಸಾರಾಂಶಗೊಳಿಸಲು ಮತ್ತು ಗುಂಪುಗಳನ್ನು ಹೋಲಿಸಲು ಬಯಸಿದರೆ, ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಸೂಕ್ತ ಆಯ್ಕೆಯಾಗಿದೆ. ಮೂಲ ಡೇಟಾ ರಚನೆಯನ್ನು ಉಳಿಸಿಕೊಂಡು ಗುಂಪುಗಳೊಳಗಿನ ಡೇಟಾವನ್ನು ಮಾರ್ಪಡಿಸಬೇಕಾದರೆ, ರೂಪಾಂತರವು ಉತ್ತಮ ಆಯ್ಕೆಯಾಗಿದೆ.
ಸುಧಾರಿತ GroupBy ತಂತ್ರಗಳು
ಮೂಲಭೂತ ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಮತ್ತು ರೂಪಾಂತರದ ಆಚೆ, Pandas GroupBy ಹೆಚ್ಚು ಸಂಕೀರ್ಣವಾದ ಡೇಟಾ ವಿಶ್ಲೇಷಣೆಗಾಗಿ ಸುಧಾರಿತ ತಂತ್ರಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ.
apply() ನೊಂದಿಗೆ ಕಸ್ಟಮ್ ಕಾರ್ಯಗಳನ್ನು ಅನ್ವಯಿಸುವುದು
apply() ವಿಧಾನವು ಹೆಚ್ಚಿನ ನಮ್ಯತೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ, ಪ್ರತಿ ಗುಂಪಿಗೆ ಯಾವುದೇ ಕಸ್ಟಮ್ ಕಾರ್ಯವನ್ನು ಅನ್ವಯಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಈ ಕಾರ್ಯವು ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ, ರೂಪಾಂತರ ಅಥವಾ ಇನ್ನಷ್ಟು ಸಂಕೀರ್ಣ ಲೆಕ್ಕಾಚಾರಗಳನ್ನು ಒಳಗೊಂಡಂತೆ ಯಾವುದೇ ಕಾರ್ಯಾಚರಣೆಯನ್ನು ನಿರ್ವಹಿಸಬಹುದು.
def custom_function(group):
# Calculate the sum of sales for each category in a group, only if there is more than one row in the group
if len(group) > 1:
group['Sales_Sum'] = group['Sales'].sum()
else:
group['Sales_Sum'] = 0 # Or some other default value
return group
df_applied = df.groupby('Country').apply(custom_function)
print(df_applied)
ಈ ಉದಾಹರಣೆಯಲ್ಲಿ, ನಾವು ಪ್ರತಿ ಗುಂಪಿನ (ದೇಶ) ಒಳಗಿನ ಮಾರಾಟದ ಮೊತ್ತವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುವ ಕಸ್ಟಮ್ ಕಾರ್ಯವನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುತ್ತೇವೆ. apply() ವಿಧಾನವು ಈ ಕಾರ್ಯವನ್ನು ಪ್ರತಿ ಗುಂಪಿಗೆ ಅನ್ವಯಿಸುತ್ತದೆ, ಆ ಗುಂಪಿನ ಮಾರಾಟದ ಮೊತ್ತವನ್ನು ಒಳಗೊಂಡಿರುವ ಹೊಸ ಕಾಲಮ್ ಅನ್ನು ನೀಡುತ್ತದೆ.
ಪ್ರಮುಖ ಗಮನಿಸಿ: The apply function can be more computationally intensive than the other methods. ಬೃಹತ್ ಡೇಟಾಸೆಟ್ಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವಾಗ ನಿಮ್ಮ ಕೋಡ್ ಅನ್ನು ಉತ್ತಮಗೊಳಿಸಿ ಮತ್ತು ಪರ್ಯಾಯ ಅನುಷ್ಠಾನಗಳನ್ನು ಪರಿಗಣಿಸಿ.
ಬಹು ಕಾಲಮ್ಗಳ ಮೂಲಕ ಗುಂಪು ಮಾಡುವುದು
ಹೆಚ್ಚು ವಿವರವಾದ ವಿಭಾಗಗಳನ್ನು ರಚಿಸಲು ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಬಹು ಕಾಲಮ್ಗಳ ಮೂಲಕ ಗುಂಪು ಮಾಡಬಹುದು. ಇದು ಬಹು ಗುಣಲಕ್ಷಣಗಳ ಛೇದಕದ (intersection) ಆಧಾರದ ಮೇಲೆ ಡೇಟಾವನ್ನು ವಿಶ್ಲೇಷಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ.
category_country_sales = df.groupby(['Category', 'Country'])['Sales'].sum()
print(category_country_sales)
ಇದು Category ಮತ್ತು Country ಎರಡರಿಂದಲೂ ಡೇಟಾವನ್ನು ಗುಂಪು ಮಾಡುತ್ತದೆ, ಪ್ರತಿ ದೇಶದಲ್ಲಿನ ಪ್ರತಿ ವರ್ಗದ ಒಟ್ಟು ಮಾರಾಟವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಇದು ವಿವಿಧ ಪ್ರದೇಶಗಳು ಮತ್ತು ಉತ್ಪನ್ನ ಸಾಲುಗಳಾದ್ಯಂತ ಮಾರಾಟದ ಕಾರ್ಯಕ್ಷಮತೆಯ ಹೆಚ್ಚು ವಿವರವಾದ ನೋಟವನ್ನು ಒದಗಿಸುತ್ತದೆ.
ಗುಂಪುಗಳ ಮೂಲಕ ಪುನರಾವರ್ತಿಸುವುದು (Iterating)
ಹೆಚ್ಚು ಸಂಕೀರ್ಣ ವಿಶ್ಲೇಷಣೆಗಾಗಿ, for ಲೂಪ್ ಬಳಸಿ ನೀವು ಗುಂಪುಗಳ ಮೂಲಕ ಪುನರಾವರ್ತಿಸಬಹುದು (iterate). ಇದು ಪ್ರತಿ ಗುಂಪನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಪ್ರವೇಶಿಸಲು ಮತ್ತು ಅದರ ಮೇಲೆ ಕಸ್ಟಮ್ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ನಿರ್ವಹಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ.
for name, group in df.groupby('Category'):
print(f\"Category: {name}\")
print(group)
ಇದು ಪ್ರತಿ ಉತ್ಪನ್ನ ವರ್ಗದ ಮೂಲಕ ಪುನರಾವರ್ತಿಸುತ್ತದೆ ಮತ್ತು ಅನುಗುಣವಾದ ಡೇಟಾವನ್ನು ಮುದ್ರಿಸುತ್ತದೆ. ಇದು ಕಸ್ಟಮ್ ವಿಶ್ಲೇಷಣೆಯನ್ನು ನಿರ್ವಹಿಸಲು ಅಥವಾ ಪ್ರತಿ ವರ್ಗಕ್ಕೆ ವರದಿಗಳನ್ನು ರಚಿಸಲು ಉಪಯುಕ್ತವಾಗಬಹುದು.
GroupBy ಬಳಸಲು ಉತ್ತಮ ಅಭ್ಯಾಸಗಳು
GroupBy ನ ಸಮರ್ಥ ಮತ್ತು ಪರಿಣಾಮಕಾರಿ ಬಳಕೆಯನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು, ಈ ಕೆಳಗಿನ ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ಪರಿಗಣಿಸಿ:
- ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಿ:
GroupByಅನ್ವಯಿಸುವ ಮೊದಲು, ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಮತ್ತು ಸಂಬಂಧಿತ ಗುಂಪು ಮಾಡುವ ಮಾನದಂಡಗಳು ಹಾಗೂ ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ/ರೂಪಾಂತರ ಕಾರ್ಯಗಳನ್ನು ಗುರುತಿಸಲು ಸಮಯ ತೆಗೆದುಕೊಳ್ಳಿ. - ಸರಿಯಾದ ಕಾರ್ಯಾಚರಣೆಯನ್ನು ಆರಿಸಿ: ನಿಮ್ಮ ವಿಶ್ಲೇಷಣಾತ್ಮಕ ಗುರಿಗಳಿಗೆ ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಅಥವಾ ರೂಪಾಂತರ ಸೂಕ್ತ ಆಯ್ಕೆಯಾಗಿದೆಯೇ ಎಂದು ಎಚ್ಚರಿಕೆಯಿಂದ ಪರಿಗಣಿಸಿ.
- ಕಾರ್ಯಕ್ಷಮತೆಗಾಗಿ ಉತ್ತಮಗೊಳಿಸಿ: ದೊಡ್ಡ ಡೇಟಾಸೆಟ್ಗಳಿಗಾಗಿ, ವೆಕ್ಟರೈಸ್ಡ್ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಮತ್ತು ಅನಗತ್ಯ ಲೂಪ್ಗಳನ್ನು ತಪ್ಪಿಸುವ ಮೂಲಕ ನಿಮ್ಮ ಕೋಡ್ ಅನ್ನು ಉತ್ತಮಗೊಳಿಸುವುದನ್ನು ಪರಿಗಣಿಸಿ.
- ಕಾಣೆಯಾದ ಮೌಲ್ಯಗಳನ್ನು ನಿರ್ವಹಿಸಿ: ನಿಮ್ಮ ಡೇಟಾದಲ್ಲಿ ಕಾಣೆಯಾದ ಮೌಲ್ಯಗಳ ಬಗ್ಗೆ ತಿಳಿದಿರಲಿ ಮತ್ತು
fillna()ಅಥವಾdropna()ನಂತಹ ವಿಧಾನಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಅವುಗಳನ್ನು ಸೂಕ್ತವಾಗಿ ನಿರ್ವಹಿಸಿ. - ನಿಮ್ಮ ಕೋಡ್ ಅನ್ನು ದಾಖಲಿಸಿ: ಪ್ರತಿ
GroupByಕಾರ್ಯಾಚರಣೆಯ ಉದ್ದೇಶ ಮತ್ತು ನಿಮ್ಮ ಆಯ್ಕೆಗಳ ಹಿಂದಿನ ಕಾರಣವನ್ನು ವಿವರಿಸಲು ನಿಮ್ಮ ಕೋಡ್ ಅನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ದಾಖಲಿಸಿ.
ತೀರ್ಮಾನ
Pandas GroupBy ಡೇಟಾ ವಿಶ್ಲೇಷಣೆಗಾಗಿ ಒಂದು ಪ್ರಬಲ ಸಾಧನವಾಗಿದೆ, ಇದು ನಿಮ್ಮ ಡೇಟಾವನ್ನು ವಿಭಜಿಸಲು, ಪ್ರತಿ ಗುಂಪಿಗೆ ಕಾರ್ಯಗಳನ್ನು ಅನ್ವಯಿಸಲು ಮತ್ತು ಅಮೂಲ್ಯವಾದ ಒಳನೋಟಗಳನ್ನು ಹೊರತೆಗೆಯಲು ನಿಮಗೆ ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ ಮತ್ತು ರೂಪಾಂತರ ತಂತ್ರಗಳಲ್ಲಿ ಪಾಂಡಿತ್ಯ ಸಾಧಿಸುವ ಮೂಲಕ, ನಿಮ್ಮ ಡೇಟಾದ ಸಂಪೂರ್ಣ ಸಾಮರ್ಥ್ಯವನ್ನು ನೀವು ಅನಾವರಣಗೊಳಿಸಬಹುದು ಮತ್ತು ಆಧಾರವಾಗಿರುವ ಮಾದರಿಗಳು ಮತ್ತು ಪ್ರವೃತ್ತಿಗಳ ಬಗ್ಗೆ ಆಳವಾದ ತಿಳುವಳಿಕೆಯನ್ನು ಪಡೆಯಬಹುದು. ನೀವು ಮಾರಾಟದ ಡೇಟಾ, ಸಂವೇದಕ ರೀಡಿಂಗ್ಗಳು ಅಥವಾ ಸಾಮಾಜಿಕ ಮಾಧ್ಯಮ ಚಟುವಟಿಕೆಯನ್ನು ವಿಶ್ಲೇಷಿಸುತ್ತಿರಲಿ, GroupBy ಡೇಟಾ-ಚಾಲಿತ ನಿರ್ಧಾರಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳಲು ಮತ್ತು ನಿಮ್ಮ ವಿಶ್ಲೇಷಣಾತ್ಮಕ ಗುರಿಗಳನ್ನು ಸಾಧಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ. GroupBy ನ ಶಕ್ತಿಯನ್ನು ಅಳವಡಿಸಿಕೊಳ್ಳಿ ಮತ್ತು ನಿಮ್ಮ ಡೇಟಾ ವಿಶ್ಲೇಷಣಾ ಕೌಶಲ್ಯಗಳನ್ನು ಮುಂದಿನ ಹಂತಕ್ಕೆ ಏರಿಸಿ.
ಈ ಮಾರ್ಗದರ್ಶಿಯು ಒಟ್ಟುಗೂಡಿಸುವಿಕೆ (Aggregation) ವಿರುದ್ಧ ರೂಪಾಂತರ (Transformation) ವನ್ನು ಕೇಂದ್ರೀಕರಿಸಿ Pandas GroupBy ಕಾರ್ಯಾಚರಣೆಗಳ ಸಮಗ್ರ ಅವಲೋಕನವನ್ನು ಒದಗಿಸಿದೆ. ಅಂತರರಾಷ್ಟ್ರೀಯ ಡೇಟಾದ ಮೇಲೆ ಈ ತಂತ್ರಗಳನ್ನು ಬಳಸಿಕೊಂಡು, ವಿಶ್ವದಾದ್ಯಂತದ ಡೇಟಾ ವಿಜ್ಞಾನಿಗಳು ವೈವಿಧ್ಯಮಯ ಡೇಟಾಸೆಟ್ಗಳಿಂದ ನಿರ್ಣಾಯಕ ವ್ಯಾಪಾರ ಒಳನೋಟಗಳನ್ನು ಹೊರತೆಗೆಯಲು ಸಮರ್ಥರಾಗಿದ್ದಾರೆ. Pandas ನ ಸಂಪೂರ್ಣ ಸಾಮರ್ಥ್ಯವನ್ನು ಬಳಸಿಕೊಳ್ಳಲು ಅಭ್ಯಾಸ ಮಾಡಿ, ಪ್ರಯೋಗಿಸಿ ಮತ್ತು ಈ ತಂತ್ರಗಳನ್ನು ನಿಮ್ಮ ನಿರ್ದಿಷ್ಟ ಅಗತ್ಯಗಳಿಗೆ ಹೊಂದಿಕೊಳ್ಳುವಂತೆ ಮಾಡಿ.