I'm writting a NMEA sentences parser, and couldn't find ant documentation about GPRMA sentence except that it is: "Recommended minimum specific Loran-C data". does anyone know what is the meaning of this sentence?
does the longitude and latitude in it refer to the gps device current location?
thanks
From the very handy guide at http://aprs.gids.nl/nmea/#rma:
eg. $GPRMA,A,llll.ll,N,lllll.ll,W,,,ss.s,ccc,vv.v,W*hh
1 = Data status
2 = Latitude
3 = N/S
4 = longitude
5 = W/E
6 = not used
7 = not used
8 = Speed over ground in knots
9 = Course over ground
10 = Variation
11 = Direction of variation E/W
12 = Checksum
Now, LORAN data is not GPS. It is similar, but an old standard of ground stations that were used to find positions. So to specifically answer your question, no, this is not GPS data. If you want GPS data, you will need $GPRMC.
Related
Suppose that I have the following data t:
activity
teacher
group
students
duration
subject
One
A
a
3
45
Math
One
B
b
2
45
Math
two
A
c
7
60
P.E
One
D
a
3
45
Math
two
C
c
7
60
P.E
I want to construct a graph data instead of this tabular data. I am actually interested in predicting the teacher by applying some kind of Graph ML. is there a way to transform the tabular data into graphical data ? maybe using networkX.
I tried the following code
G = nx.from_pandas_edgelist(df, "subject", "teacher", edge_attr=True, create_using=nx.Graph())
nx.draw_networkx(G)
plt.show()
the output of this looks like a graph, but I don't understand how it works or how can I get the new data or what is the best way to identify the node and the edge.
thank you in advance for any help.
I have lat/long data of two animals tracked in Western Australia and I'd like to find their home ranges using adehabitatHR.
library(sp)
library(rgdal)
library(raster)
library(adehabitatHR)
library(sf)
quolls<-read.csv("quolls.csv")
head(quolls)
Latitude Longitude animal_ID
1 -22.62271 117.1247 1
2 -22.62286 117.1246 1
3 -22.62192 117.1223 1
4 -22.62021 117.1224 1
5 -22.61989 117.1244 1
6 -22.62022 117.1260 1
But the home range estimates of each animal are obviously too small.
I think the EPSG must be wrong but after a very long time looking I still can't find the right one.
Can anyone point me in the right direction please?
# make a SpatialPoints dataframe without a CRS
quolls2 <- quolls
quoll.latlong<-data.frame(x=quolls2$Longitude,y=quolls2$Latitude)
coordinates(quolls2) <- quoll.latlong
# add crs
proj4string(quolls2) <- CRS(SRS_string = "EPSG:4283")
mcp<-mcp(quolls2[,7],percent=95,unout = c("ha"))
mcp
Home range for animal 1 is 1.217428e-08 and animal 2 is 6.253689e-08.
And likewise with kernel density estimation;
quoll_ud <- adehabitatHR::kernelUD(quolls2[7],grid = 450)
quoll_hr <- adehabitatHR::getverticeshr(quoll_ud, 99)
print(quoll_hr)
which estimates animal 1 at 2.36917592701502e-08 and animal 2 at 1.16018636413173e-07.
Just stumbled across the answer.. it's EPSG 28350.
I got it to work in the end by abandoning the raw lats and longs and instead importing a shapefile I had of the animal data with st_read.
Then st_transform to 28350.
Then as mcp accepts only SpatialPoints, I converted the object with
as(obj, "Spatial").
We are investigating migrating a prototype into SQL Server (azure).
We have LineStrings that also have M values. What we would like to do is given another M value find out what its geographical location is.
To aid your visualisation, here is a real-world example:
I have a linestring that represents a flight path. Because the flight goes up and down the distance the plane has actually moved is not the same as the total length of the linestring. We have calibrated M values as a part of the linestring but need to be able to plot on it where a given event occurred. All we know about this event is its M value.
SET #g = geometry::STGeomFromText('LINESTRING(1 0 NULL 0, 2 2 NULL 5, 1 4 NULL 9, 3 6 NULL 15)', 0);
Given something like the above, what is the lat and long of a point with an M value of 8?
This should be an equivalent postgis's ST_LocateAlong
The M value is not a time, but a distance. It should be understood that this distance is arbitrary and does not directly relate to the length of the line and is calibrated against known points. This is due to the set being based on historic data that is in no way accurate by today's standards.
*Note I am not sure if I have Nulled the Z or M value. The extra parameter we are considering here is the M only.
I am getting GPS information from a device like this
052340.000,A
32.46275,N
75.310415,E
I know N is for north and E for east but what A is representing?
Looking at the value, and some of the other comments, it is unlikely to be an altitude in meters. If this has been extracted from a GPGLL NMEA sentance, the value is time of fix, e.g. 05:23:40, as per the following
$GPGLL
Geographic Position, Latitude / Longitude and time.
eg2. $GPGLL,4916.45,N,12311.12,W,225444,A
4916.46,N Latitude 49 deg. 16.45 min. North
12311.12,W Longitude 123 deg. 11.12 min. West
225444 Fix taken at 22:54:44 UTC
A Data valid
eg3. $GPGLL,5133.81,N,00042.25,W*75
1 2 3 4 5
1 5133.81 Current latitude
2 N North/South
3 00042.25 Current longitude
4 W East/West
5 *75 checksum
$--GLL,lll.ll,a,yyyyy.yy,a,hhmmss.ss,A
llll.ll = Latitude of position
a = N or S
yyyyy.yy = Longitude of position
a = E or W
hhmmss.ss = UTC of position
A = status: A = valid data
Altitude. it would depend on the device as to what units it is. from the number shown in your example i would doubt it is meters, unless you are in an aeroplane.
more info here
I read in a book on non-deterministic mapping there is mapping from Q*∑ to 2Q for M=(Q,∑,trans,q0,F)
where Q is a set of states.
But I am not able to understand how it's 2Q;
if there are 3 states a, b, c, how does it map to 8 states?
I always found that the easiest way to think about these (since the set of states is finite) is as having each of those subsets be an encoding of a base-2 number that ranges from 0 (all bits zero) to 2|Q|-1 (all bits one), where there are as many bits in the number as there are members in the state set, Q. Then, you can just take one of these numbers and map it into a subset by using whether a particular bit in the number is set. Easy!
Here's a worked example where Q = {a,b,c}. In this case, |Q| is 3 (there are three elements) and so 23 is 8. That means we get this if we say that the leading bit is for element a, the next bit is for b, and the trailing bit for c:
0 = 000 = {}
1 = 001 = {c}
2 = 010 = {b}
3 = 011 = {b,c}
4 = 100 = {a}
5 = 101 = {a,c}
6 = 110 = {a,b}
7 = 111 = {a,b,c}
See? That initial three states has been transformed into 8, and we have a natural numbering of them that we could use to create the labels of those states if we chose.
Now, to the interpretations of this within a non-deterministic context. Basically, the non-determinism means that we're uncertain about what state we're in. We represent this by using a pseudo-state that is the set of “real” states that we might be in; if we have total non-determinism then we are in the pseudo-state where all real-states are possible (i.e., {a,b,c}) whereas the pseudo-state where no real-states are possible (i.e., {}) is the converse (and really ought to be impossible to reach in the transition system). In a real system, you're usually not dealing with either of those extremes.
The logic of how you convert the deterministic transition system into a non-deterministic one is rather more complex than I want to go into here. (I had to read a substantial PhD thesis to learn it so it's definitely more than an SO answer's worth!)
2Q means the set of all subsets of Q. For each state q and each letter x from sigma, there is a subset of Q states to which you can go from q with letter x. So yeah, if there are three states abc the set 2Q consists of 8 elements {{}, {a}, {b}, {c}, {a,b}, {a,c}, {b,c}, {a,b,c}}. It doesn't map to 8 states, it maps to one of these 8 sets. HTH