-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathfanc_cellid_from_segid.Rd
95 lines (87 loc) · 3.24 KB
/
fanc_cellid_from_segid.Rd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/ids.R
\name{fanc_cellid_from_segid}
\alias{fanc_cellid_from_segid}
\alias{fanc_segid_from_cellid}
\title{Convert between FANC cell ids and root ids}
\usage{
fanc_cellid_from_segid(
rootids = NULL,
timestamp = NULL,
version = NULL,
cellid_table = NULL,
rval = c("ids", "data.frame")
)
fanc_segid_from_cellid(
cellids = NULL,
timestamp = NULL,
version = NULL,
rval = c("ids", "data.frame"),
integer64 = FALSE,
cellid_table = NULL
)
}
\arguments{
\item{rootids}{FANC root ids in any form understood by
\code{\link{fanc_ids}}. The default value of NULL will return all cell ids.}
\item{timestamp}{An optional time stamp. You should give only one of
\code{version} or \code{timestamp}. When both are missing, ids should match
the live materialisation version including up to the second edits.}
\item{version}{An optional integer CAVE materialisation version. You should
give only one of \code{version} or \code{timestamp}. When both are missing,
ids should match the live materialisation version including up to the
second edits.}
\item{cellid_table}{Optional name of cell id table (the default value of
\code{NULL} should find the correct table).}
\item{rval}{Whether to return the cell ids or the whole of the CAVE table
with additional columns.}
\item{cellids}{Integer cell ids between between 1 and around 20000 that
\emph{should} uniquely identify each cell in the dataset.}
\item{integer64}{Whether to return ids as \code{bit64::integer64} or
character vectors. Default value of NA leaves the ids unmodified.}
}
\value{
Either a vector of ids or a data.frame depending on \code{rval}. For
cell ids the vector will be an integer for root ids (segment ids), a
character vector or an \code{bit64::integer64} vector depending on the
\code{integer64} argument.
}
\description{
Converts between FANC cell ids (should survive most edits) and
root ids (guaranteed to match just one edit state). See details.
}
\details{
CAVE/PyChunkedGraph assigns a 64 bit integer root id to all bodies
in the segmentation. These root ids are persistent in a computer science
sense, which is often the exact opposite of what neuroscientists might
imagine. Specifically, a given root id is matched to a single edit state of
a neuron. If the neuron is edited, then root id changes. In contrast, cell
ids do not change even in the face of edits. However, it is important to
understand that they correspond to a specific point on a neuron, commonly
the nucleus. If the nucleus is edited away from a the rest of a neuron to
which it previously belonged, then the cell id and any associated edits
will effectively with move it.
For further details see
\href{https://fanc-reconstruction.slack.com/archives/CLDH21J4U/p1690755500802509}{FANC
slack} and
\href{https://github.com/htem/FANC_auto_recon/wiki/Neuron-annotations#neuron_information}{FANC
wiki}.
}
\examples{
\donttest{
fanc_cellid_from_segid(fanc_latestid("648518346486614449"))
}
\donttest{
fanc_cellid_from_segid(fanc_latestid("648518346486614449"))
}
}
\seealso{
Other fanc-ids:
\code{\link{fanc_ids}()},
\code{\link{fanc_islatest}()},
\code{\link{fanc_latestid}()},
\code{\link{fanc_leaves}()},
\code{\link{fanc_rootid}()},
\code{\link{fanc_xyz2id}()}
}
\concept{fanc-ids}