| Title: | Read and Write 'MTrackJ Data Files' |
|---|---|
| Description: | 'MTrackJ' is an 'ImageJ' plugin for motion tracking and analysis (see <https://imagescience.org/meijering/software/mtrackj/>). This package reads and writes 'MTrackJ Data Files' ('.mdf', see <https://imagescience.org/meijering/software/mtrackj/format/>). It supports 2D data and read/writes cluster, point, and channel information. If desired, generates track identifiers that are unique over the clusters. See the project page for more information and examples. |
| Authors: | Gerhard Burger [aut, cre] (ORCID: <https://orcid.org/0000-0003-1062-5576>) |
| Maintainer: | Gerhard Burger <[email protected]> |
| License: | GPL-3 | file LICENSE |
| Version: | 0.2.2.9000 |
| Built: | 2026-06-04 10:50:02 UTC |
| Source: | https://github.com/burgerga/mdftracks |
Example data to show mdftracks functionality
mdftracks.example.datamdftracks.example.data
A data frame with 10 rows and 9 variables
track cluster
track identifier (in cluster)
point in track (not necessarily the same as frame number)
x-coordinate of point
y-coordinate of point
z-coordinate of point
time of point
track channel
track identifier (unique over clusters)
Self-generated
.mdf)Reads an MTrackJ Data File (.mdf) file in a data.frame.
read.mdf( file, drop.Z = F, include.point.numbers = FALSE, include.channel = F, generate.unique.ids = F, text, fileEncoding = "" )read.mdf( file, drop.Z = F, include.point.numbers = FALSE, include.channel = F, generate.unique.ids = F, text, fileEncoding = "" )
file |
MTrackJ Data File ( |
drop.Z |
drop z-coordinate (for 2D data) |
include.point.numbers |
include the point numbers in the mdf file (NB these can be different from the time/frame points) |
include.channel |
include channel information |
generate.unique.ids |
combine cluster and id columns to get unique ids |
text |
character string: if file is not supplied and this is, then data are read from the value of text via a text connection. Notice that a literal string can be used to include (small) data sets within R code. |
fileEncoding |
character string: if non-empty declares the encoding to
be used on a file (not a connection) so the character data can be re-encoded
as they are written. See |
Other mdftracks functions:
write.mdf()
read.mdf(system.file("extdata", "example.mdf", package = 'mdftracks'))read.mdf(system.file("extdata", "example.mdf", package = 'mdftracks'))
.mdf)Writes a data.frame with tracking information as an MTrackJ Data File (.mdf)
file. Allows flexible column specification, and to avoid errors the column
mapping used for writing is reported back to the user. Writing tracking data in
'id time x y z' format, for example, from the celltrackR package, doesn't
require additional arguments.
write.mdf( x, file = "", cluster.column = NA, id.column = 1, time.column = 2, scale.time = 1, pos.columns = c(3, 4, 5), channel.column = NA, point.column = NA, default.channel = 1, fileEncoding = "" )write.mdf( x, file = "", cluster.column = NA, id.column = 1, time.column = 2, scale.time = 1, pos.columns = c(3, 4, 5), channel.column = NA, point.column = NA, default.channel = 1, fileEncoding = "" )
x |
the data.frame with track information. |
file |
either a character string naming a file or a connection open for writing. "" indicates output to the console. |
cluster.column |
index or name of the column that contains the cluster ID. |
id.column |
index or name of the column that contains the track ID (either the id in the cluster or a unique id). |
time.column |
index or name of the column that contains elapsed time |
scale.time |
a value by which to multiply each time point. Useful for changing units, or specifying the time between positions if the time is given in frames. |
pos.columns |
vector containing indices or names of the columns that contain the spatial coordinates. If this vector has two entries, the data is assumed to be 2D and the z coordinate is set to 1.0. |
channel.column |
index or name of the column that contains channel
information. If there is no channel column |
point.column |
index or name of the column that contains point ID. If there is no point column, points will be numbered automatically (NB points are not necessarily the same as frames). |
default.channel |
channel to be used if |
fileEncoding |
character string: if non-empty declares the encoding to
be used on a file (not a connection) so the character data can be re-encoded
as they are written. See |
Other mdftracks functions:
read.mdf()
## Not run: # Output to file write.mdf(mdftracks.example.data, '~/example.mdf', id.column = 'uid', time.column = 't', pos.columns = letters[24:26]) ## End(Not run) # Output to stdout with cluster column write.mdf(mdftracks.example.data, cluster.column = 'cl', id.column = 'id', time.column = 't', pos.columns = letters[24:26]) # Output to stdout using data in (id, t, x, y, z) format write.mdf(mdftracks.example.data[, c('uid', 't', letters[24:26])])## Not run: # Output to file write.mdf(mdftracks.example.data, '~/example.mdf', id.column = 'uid', time.column = 't', pos.columns = letters[24:26]) ## End(Not run) # Output to stdout with cluster column write.mdf(mdftracks.example.data, cluster.column = 'cl', id.column = 'id', time.column = 't', pos.columns = letters[24:26]) # Output to stdout using data in (id, t, x, y, z) format write.mdf(mdftracks.example.data[, c('uid', 't', letters[24:26])])