restore_linkdat is the reverse of as.matrix.
The way linkdat objects are created in paramlink, marker data
are stored as a list of marker objects. Each of these is essentially a
matrix with various attributes like allele frequencies, map info a.s.o.. This
format works well for marker-by-marker operations (e.g. likelihoods and LOD
scores), but makes it somewhat awkward to operate 'horizontally', i.e.
individual-by-individual, for instance if one wants to delete all genotypes
of a certain individual, or rearrange the pedigree in some way.
It is therefore recommended to convert the linkdat object to a matrix
first, do the necessary manipulations on the matrix, and finally use
restore_linkdat. Attributes are often deleted during matrix
manipulation, so it may be necessary to store them in a variable and feed
them manually to restore_linkdat using the attrs argument.
With default parameters, restore_linkdat(as.matrix(x)) should
reproduce x exactly.