You could try using parse_guess
on soundings_48615
and it would convert the columns in preferable format
library(tidyverse)
library(readr)
new_df <- map(soundings_48615, . %>% mutate_all(parse_guess))
str(new_df)
#List of 4
# $ :Classes ‘tbl_df’, ‘tbl’ and 'data.frame': 1 obs. of 30 variables:
# ..$ 1000 hPa to 500 hPa thickness : num 5778
# ..$ Bulk Richardson Number : num 2094
# ..$ Bulk Richardson Number using CAPV : num 2472
# ..$ CAPE using virtual temperature : num 921
# ..$ CINS using virtual temperature : num -9.03
# ..$ Convective Available Potential Energy : num 780
# ..$ Convective Inhibition : num -14.2
# ..$ Cross totals index : num 21.7
# ..$ Equilibrum Level : num 136
#....