Если сглаживающий сплайн - это просто натуральный кубический сплайн с узлами на каждом уникальном значении x_i.Тогда зачем gam::s() в R нужна степень свободы?
x_i
gam::s()
Потому что это сглаживание, а не интерполяция.Степень свободы говорит о том, какую сложность вы хотите в подобранном сплайне.