0) Using a float for an ID column is not the best idea. If you think your ids are going to be numerous, use a bigint.
1) After adding data, changing the type of a column will result in the loss of all data in the table.
2) If it were me, I would create a whole new table with the same schema, change the type of the desired columns, and insert records from the old table into the new one, remembering to cast.convert the appropriate columns data into the new schema's type.
SELECT TOP 0 * INTO NewTable FROM OldTable;
INSERT INTO NewTable
SELECT col1,
Convert(newtype, col2) AS col2,
...
FROM OldTable;
EDIT =============================
Ya know, it thrills me to no end when someone 1–votes an answer without providing a reason why. Remember, the quality of the question directly affects the quality of the answer.