Search code examples
pythongoogle-colaboratorysequentialfeatureselector

Google Colab ModuleNotFoundError: No module named 'sklearn.externals.joblib'


My Initial import looks like this and this code block runs fine.

# Libraries to help with reading and manipulating data
import numpy as np
import pandas as pd

# Libraries to help with data visualization
import matplotlib.pyplot as plt
import seaborn as sns

sns.set()

# Removes the limit for the number of displayed columns
pd.set_option("display.max_columns", None)
# Sets the limit for the number of displayed rows
pd.set_option("display.max_rows", 200)

# to split the data into train and test
from sklearn.model_selection import train_test_split

# to build linear regression_model
from sklearn.linear_model import LinearRegression

# to check model performance
from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score

But when I try to following command I get the error ModuleNotFoundError: No module named 'sklearn.externals.joblib'

I tried to use !pip to install all the modules and other suggestions for this error it didnt work. This is google colab so not sure what I am missing

from mlxtend.feature_selection import SequentialFeatureSelector as SFS

Solution

  • For the second part you can do this to fix it, I copied the rest of your code as well, and added the bottom part.

    # Libraries to help with reading and manipulating data
    import numpy as np
    import pandas as pd
    
    # Libraries to help with data visualization
    import matplotlib.pyplot as plt
    import seaborn as sns
    
    sns.set()
    
    # Removes the limit for the number of displayed columns
    pd.set_option("display.max_columns", None)
    # Sets the limit for the number of displayed rows
    pd.set_option("display.max_rows", 200)
    
    # to split the data into train and test
    from sklearn.model_selection import train_test_split
    
    # to build linear regression_model
    from sklearn.linear_model import LinearRegression
    
    # to check model performance
    from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score
    
    # I changed this part
    !pip install mlxtend
    import joblib
    import sys
    sys.modules['sklearn.externals.joblib'] = joblib
    from mlxtend.feature_selection import SequentialFeatureSelector as SFS
    

    it works for me.