I have two data frames.
- Type of main_df:  pandas.core.frame.DataFrame
- Type of exclude_df : pandas.core.series.Series
import pandas as pd
main_df = pd.DataFrame(
    {
        "user_name": ["Tommy", "Martin", "Andy", "Lauren", "Will", "Turner", "Henry"],
        "user_id": ["03920", "34233", "02342", "32324", "52323", "20932", "02034"],
        "col_0": [2, 4, 8, 0, 3, 5, 3],
        "col_1": [10, 2, 1, 8, 2, 3, 2],
    }
)
exclude_df = pd.Series(['02342', '52323', '02034'])
exclude_df = exclude_df.rename("user_id")
Goal:
Filter or remove rows of main_df using exclude_df and get the below result.
    user_name   user_id  col_0    col_1
0   Tommy       03920       2       10
1   Martin      34233       4       2
2   Lauren      32324       0       8
3   Turner      20932       5       3
My code:
# convert series to dataframe
exclude_df = exclude_df.to_frame()
_df = main_df.merge(exclude_df,on=['user_id'])
result_df = main_df[~main_df.user_id.isin(_df.user_id)]
print(result_df)
Is there another method to achive this without convert pandas.core.series.Series to pandas.core.frame.DataFrame ?
 
    