I have downloaded a table of temperature data from a datalogger where the decimal points dissapeared. Here is a fragment:
temperature<-c( 227725, 208957, 210834, 214588, 218342)
date<-c("2022-06-14 12:02:01 UTC", "2022-06-14 12:32:01 UTC", "2022-06-14 13:02:01 UTC", "2022-06-14 13:32:01 UTC", "2022-06-14 14:02:01 UTC")
df<-data.frame(date,temperature)
df
date temperature
1 2022-06-14 12:02:01 UTC 227725
2 2022-06-14 12:32:01 UTC 208957
3 2022-06-14 13:02:01 UTC 210834
4 2022-06-14 13:32:01 UTC 214588
5 2022-06-14 14:02:01 UTC 218342
I already know that the decimal point should be after the first two digits.
Is there a way to insert the decimal separator?
Thanks in advance!
If the numbers may not be all six-digit but you are sure that the decimal point must come after the second digit, then the following should work:
as.character(df$temperaturegsubto replace the first 2 digits with themselves plus a dotgsub("^(\\d{2})", "\\1.", as.character(df$temperature))as.numeric(gsub("^(\\d{2})", "\\1.", as.character(df$temperature)))So,