# Keeps only rows without a missing value
df = df[df['name'].notna()]
# create a new dataframe CONTAINING ONLY the rows, where the value
# of some_column = some_value
new_df = old_df.loc[old_df['some_column']=='some_value']
# create a new dataframe EXCLUDING the rows, where the value of
# some_column = some_value
new_df = old_df.loc[old_df['some_column']!='some_value']