Вы не должны наблюдать живые данные в viewModel, попробуйте добавить их в качестве источника для mediatorLiveData и наблюдать их непосредственно в представлении:
val mediatorLiveData: MediatorLiveData<Int> = MediatorLiveData().apply{
addSource(estimateyearpos) { /*Do something with "integer" */}
}
или даже (если вам не нужно он должен быть изменяемым)
val liveData = Transformations.map(estimateyearpos) { /*Do something with "integer" */}
Обе эти опции будут наблюдать исходные живые данные и применять к ним заданную функцию, но вам все равно нужно наблюдать их в Activity или фрагменте, чтобы правильно получить значения ,