The approx
function is meant for this kind of interpolation.
Example:
> d <- read.table(header=T, text="Income Numerosity
+ 6000 704790
+ 7500 1294784
+ 10000 1051902
+ 12000 1585132
+ 15000 704012
+ 20000 206901
+ 25000 156661")
> res <- approx(d$Income, d$Numerosity, seq(from=6000, to=30000, length.out=25))
> res
$x
[1] 6000 7000 8000 9000 10000 11000 12000 13000 14000 15000 16000 17000
[13] 18000 19000 20000 21000 22000 23000 24000 25000 26000 27000 28000 29000
[25] 30000
$y
[1] 704790.0 1098119.3 1246207.6 1149054.8 1051902.0 1318517.0 1585132.0
[8] 1291425.3 997718.7 704012.0 604589.8 505167.6 405745.4 306323.2
[15] 206901.0 196853.0 186805.0 176757.0 166709.0 156661.0 NA
[22] NA NA NA NA