Olá Daiane,
A diferença é que quando você usa o subset, você está especificando a coluna para a qual serão eliminadas as linhas com nulos.
Por exemplo:
import pandas as pd
import numpy as np
df = pd.DataFrame({"name": ['Alfred', 'Batman', 'Catwoman'],
"toy": [np.nan, 'Batmobile', 'Bullwhip'],
"born": [pd.NaT, pd.Timestamp("1940-04-25"), pd.NaT]})
# print do df
In[ ]: df
Out[]:
born name toy
0 NaT Alfred NaN
1 1940-04-25 Batman Batmobile
2 NaT Catwoman Bullwhip
# Eliminando qualquer linha cuja coluna tenha nulos
In[ ]: df.dropna()
Out[]:
born name toy
1 1940-04-25 Batman Batmobile
# Eliminando as linhas que estão nulas apenas na coluna 'toy'
In[ ]: df.dropna(subset=['toy'])
Out[]:
born name toy
1 1940-04-25 Batman Batmobile
2 NaT Catwoman Bullwhip
Abs