Вам нужно назначить результат fillna
:
df_pubs = df_pubs.fillna(0)
или передать параметр inplace=True
:
df_pubs.fillna(0, inplace=True)
См. docs
Вы можете изменить свой код следующим образом:.
df_pubs = df_pubs.pivot(index='Conference', columns='Year', values='totalPubs').fillna(0)
, который будет работать, но это спорный вопрос, является ли считываемый fillna
здесь