Предполагая, что ваш фрейм данных является числовым, отправленный вами код должен работать. Я предполагаю, что у вас есть некоторые нечисловые значения, которые нам нужно обойти
# make a fresh copy
df_neg <- df
# now only apply this to the numeric values
df_neg[sapply(df_neg, is.numeric)] <- df_neg[sapply(df_neg, is.numeric)] * -1