Answer provided in the comments by Jon Spring
df |> tidyr::pivot_wider(names_from = "COORDINATE", values_from = "COORDINATE_DATA")
This worked for the data outlined in the question.