1 и 3 являются целыми константами, поэтому Java выполняет целочисленное деление, результатом которого является 0. Если вы хотите написать двойные константы, вы должны написать 1.0
и 3.0
.
Пересоздать словарь:
df_dict = {k: df.assign(df['B'].astype(str) + 'JAN') for k, df in df_dict.items()}
Кроме того, можно назначить на месте, это немного дешевле:
for df in df_dict.values():
df['B'] = df['B'].astype('str') + 'JAN'
Или,
# Iterate over the items, @jpp
for k, v in df_dict.items():
df_dict[k]['B'] = v['B'].astype('str') + 'JAN'