Pandas Tutorial

Creating Objects

Viewing Data

Selection

Manipulating Data

Grouping Data

Merging, Joining and Concatenating

Working with Date and Time

Working With Text Data

Working with CSV and Excel files

Operations

Visualization

Applications and Projects

Mean absolute deviation of the values for the Series in Pandas

The Mean Absolute Deviation (MAD) is a measure of dispersion in a dataset. It's the average of the absolute differences from the mean. Let's walk through how to compute the MAD for a Series in pandas.

Mean Absolute Deviation (MAD) for a Series in Pandas

1. Setup:

Ensure you have pandas installed:

pip install pandas

2. Import Necessary Libraries:

import pandas as pd

3. Create a Series:

s = pd.Series([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])

4. Compute MAD using .mad():

Pandas provides a built-in method to compute the mean absolute deviation of a Series:

mad = s.mad()
print(f"Mean Absolute Deviation: {mad}")

5. Manual Calculation for Understanding:

To understand what .mad() does, you can compute the MAD manually:

  1. Calculate the mean of the Series.
  2. Subtract the mean from each value in the Series to get the deviations.
  3. Take the absolute values of these deviations.
  4. Find the mean of these absolute deviations.

Here's how you can do it:

mean_value = s.mean()
absolute_deviations = (s - mean_value).abs()
manual_mad = absolute_deviations.mean()
print(f"Manually Computed Mean Absolute Deviation: {manual_mad}")

You'll find that the manually computed value and the one from .mad() are the same.

6. Summary:

The mean absolute deviation (MAD) provides a way to understand the variability in a dataset by averaging the absolute differences from the mean. With pandas, computing the MAD for a Series is straightforward using the .mad() method, but understanding the manual computation helps reinforce the concept.

  1. Calculate mean absolute deviation for Series in Pandas:

    • Use the .mad() method to calculate the mean absolute deviation of a Pandas Series.
    import pandas as pd
    
    series = pd.Series([1, 2, 3, 4, 5])
    mean_abs_dev = series.mad()
    
  2. Mean absolute deviation of a Pandas Series:

    • Demonstrate the concept of mean absolute deviation for a Pandas Series.
    import pandas as pd
    
    series = pd.Series([1, 2, 3, 4, 5])
    mean_value = series.mean()
    abs_deviation = abs(series - mean_value)
    mean_abs_dev = abs_deviation.mean()
    
  3. Using mad() function for Series in Pandas:

    • Calculate the mean absolute deviation using the .mad() method.
    import pandas as pd
    
    series = pd.Series([1, 2, 3, 4, 5])
    mean_abs_dev = series.mad()
    
  4. Pandas mad vs std for Series:

    • Compare the use of .mad() and .std() for calculating mean absolute deviation and standard deviation.
    import pandas as pd
    
    series = pd.Series([1, 2, 3, 4, 5])
    mean_abs_dev = series.mad()
    std_dev = series.std()
    
  5. Compute mean absolute deviation with Pandas:

    • Manually compute the mean absolute deviation for a Pandas Series.
    import pandas as pd
    
    series = pd.Series([1, 2, 3, 4, 5])
    mean_value = series.mean()
    abs_deviation = abs(series - mean_value)
    mean_abs_dev = abs_deviation.mean()
    
  6. Custom mean absolute deviation function for Series in Pandas:

    • Create a custom function to calculate the mean absolute deviation.
    import pandas as pd
    
    def custom_mad(series):
        mean_value = series.mean()
        abs_deviation = abs(series - mean_value)
        return abs_deviation.mean()
    
    series = pd.Series([1, 2, 3, 4, 5])
    mean_abs_dev = custom_mad(series)
    
  7. Pandas Series mad calculation examples:

    • Provide additional examples of calculating mean absolute deviation using the .mad() method.
    import pandas as pd
    
    series1 = pd.Series([1, 2, 3, 4, 5])
    series2 = pd.Series([5, 4, 3, 2, 1])
    mad_series1 = series1.mad()
    mad_series2 = series2.mad()
    
  8. Calculating robust mean absolute deviation in Pandas Series:

    • Use the robust parameter of .mad() to calculate the robust mean absolute deviation.
    import pandas as pd
    
    series = pd.Series([1, 2, 3, 4, 5])
    robust_mad = series.mad(robust=True)
    
  9. Absolute deviation and MAD in Pandas Series:

    • Illustrate the relationship between absolute deviation and mean absolute deviation.
    import pandas as pd
    
    series = pd.Series([1, 2, 3, 4, 5])
    abs_deviation = abs(series - series.mean())
    mean_abs_dev = series.mad()