You'll have to do this in two steps:
Extract the characters "244.1"
Since we're only interested in 244.1, we'll get rid of the rest. This could have been done in a number of ways, one of which is tranwrd as you pointed out.
var2 = substr(var1, 13, 6);
Convert the character value "244.1" to the number 244.1
We need to take the character value and convert to a number. The input function allows us to take a character value and convert it to a number using an informat. An informat is just a way of telling sas how to interpret the value. In this case, treat it as a number stored in 8 bytes.
var3 = input(var2, 8.);
Full example program:
data work.one;
var1 = "census tract 244.1";
var2 = substr(var1, 13, 6);
var3 = input(var2, 8.);
run;
/* Show that var3 is a numeric variable */
proc contents data=work.one;
run;
Bonus Info
Note that you cannot save the converted value back to the original "var1" variable, since once it has been declared as a character variable it cannot store a number. If you did want to keep the same variable you would have to drop var1, then rename var3 to var1:
drop var1;
rename var3=var1;