Sure, it wouldn't be hard to re-load the data in a new dataset/table with more accurate types. Strings are just the default. I just wasn't sure how clean the data was and didn't want to debug bad data before loading. I was lazy basically.
But if you wanted to do it, it's pretty straightforward.
In the meantime I haven't found it to be too hard to just INTEGER(field) and FLOAT(field) wherever I need to.