If you look at the documentation for the haversine() function (linked above, and can also be seen by running ?haversine when pracma is attached, you'll see that the first two arguments, loc1 and loc2 each take a specific format.
Haversine formula to calculate the arc distance between two points on earth (i.e., along a great circle).
Usage
haversine(loc1, loc2, R = 6371.0)
Arguments
loc1, loc2
Locations on earth; for format see Details.
R
Average earth radius R = 6371 km, can be changed on input.
Details
The Haversine formula is more robust for the calculating the distance as with the spherical cosine formula. The user may want to assume a slightly different earth radius, so this can be provided as input.
The location can be input in two different formats, as latitude and longitude in a character string, e.g. for Frankfurt airport as '50 02 00N, 08 34 14E', or as a numerical two-vector in degrees (not radians).
Here for latitude 'N' and 'S' stand for North and South, and for longitude 'E' or 'W' stand for East and West. For the degrees format, South and West must be negative.
These two formats can be mixed.
The data you have given it is not in that format. You're giving it latitude for loc1 and longitude for loc2.
The two possible formats are shown in the example for haversine():
library(pracma)
FRA = '50 02 00N, 08 34 14E' # Frankfurt Airport
ORD = '41 58 43N, 87 54 17W' # Chicago O'Hare Interntl. Airport
fra <- c(50+2/60, 8+34/60+14/3600)
ord <- c(41+58/60+43/3600, -(87+54/60+17/3600))
dis <- haversine(FRA, ORD) # 6971.059 km
fprintf('Flight distance Frankfurt-Chicago is %8.3f km.\n', dis)
#> Flight distance Frankfurt-Chicago is 6971.059 km.
dis <- haversine(fra, ord)
fprintf('Flight distance Frankfurt-Chicago is %8.3f km.\n', dis)
#> Flight distance Frankfurt-Chicago is 6971.059 km.
Created on 2019-03-19 by the reprex package (v0.2.1)
I think haversine() is not vectorized, (I hadn't used the pracma package until responding to you here), so you might need to use purrr, rather than just mutate(). The Stack Overflow thread below should help, they're using a different package, but the same approach should work: