annotate MatrixEQTL/man/SlicedData-class.Rd @ 4:cf4e9238644c draft default tip

Uploaded
author jasonxu
date Fri, 12 Mar 2021 08:23:32 +0000
parents cd4c8e4a4b5b
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
1 \name{SlicedData-class}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
2 \Rdversion{1.1}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
3 \docType{class}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
4 \alias{SlicedData-class}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
5 \alias{SlicedData}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
6 \alias{SlicedData-class}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
7 \alias{[[,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
8 \alias{[[<-,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
9 \alias{colnames,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
10 \alias{colnames<-,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
11 \alias{dim,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
12 \alias{length,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
13 \alias{ncol,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
14 \alias{NCOL,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
15 \alias{nrow,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
16 \alias{NROW,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
17 \alias{rownames,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
18 \alias{rownames<-,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
19 \alias{show,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
20 \alias{as.matrix,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
21
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
22 \alias{rowMeans,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
23 \alias{rowSums,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
24 \alias{colMeans,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
25 \alias{colSums,SlicedData-method}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
26 \alias{summary.SlicedData}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
27
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
28 \title{Class \code{SlicedData} for storing large matrices}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
29 \description{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
30 This class is created for fast and memory efficient manipulations with large datasets presented in matrix form.
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
31 It is used to load, store, and manipulate large datasets, e.g. genotype and gene expression matrices.
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
32 When a dataset is loaded, it is sliced in blocks of 1,000 rows (default size).
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
33 This allows imputing, standardizing, and performing other operations with the data with minimal memory overhead.
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
34 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
35 \section{Extends}{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
36 \code{SlicedData} is a reference classes (\code{\linkS4class{envRefClass}}).
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
37 Its methods can change the values of the fields of the class.
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
38 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
39 \references{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
40 The package website: \url{http://www.bios.unc.edu/research/genomic_software/Matrix_eQTL/}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
41 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
42 \author{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
43 Andrey Shabalin \email{ashabalin@vcu.edu}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
44 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
45 \seealso{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
46 This class is used to load data for eQTL analysis by \code{\link{Matrix_eQTL_engine}}.
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
47 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
48 \keyword{classes}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
49 \section{Fields}{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
50 \describe{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
51 \item{\code{dataEnv}:}{\code{environment}. Stores the slices of the data matrix. The slices should be accessed via \code{getSlice()} and \code{setSlice()} methods. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
52 \item{\code{nSlices1}:}{\code{numeric}. Number of slices. For internal use. The value should be access via \code{nSlices()} method. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
53 \item{\code{rowNameSlices}:}{\code{list}. Slices of row names. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
54 \item{\code{columnNames}:}{\code{character}. Column names. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
55 \item{\code{fileDelimiter}:}{\code{character}. Delimiter separating values in the input file. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
56 \item{\code{fileSkipColumns}:}{\code{numeric}. Number of columns with row labels in the input file. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
57 \item{\code{fileSkipRows}:}{\code{numeric}. Number of rows with column labels in the input file. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
58 \item{\code{fileSliceSize}:}{\code{numeric}. Maximum number of rows in a slice. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
59 \item{\code{fileOmitCharacters}:}{\code{character}. Missing value (NaN) representation in the input file. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
60 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
61 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
62 \section{Methods}{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
63 \describe{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
64 \item{\code{initialize(mat)}:}{ Create the object from a matrix. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
65 \item{\code{nSlices()}:}{ Returns the number of slices. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
66 \item{\code{nCols()}:}{ Returns the number of columns in the matrix. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
67 \item{\code{nRows()}:}{ Returns the number of rows in the matrix. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
68 \item{\code{Clear()}:}{ Clears the object. Removes the data slices and row and column names. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
69 \item{\code{Clone()}:}{ Makes a copy of the object. Changes to the copy do not affect the source object. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
70 \item{\code{CreateFromMatrix(mat)}:}{ Creates \code{SlicedData} object from a \code{\link[base]{matrix}}.}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
71 \item{\code{LoadFile(filename, skipRows = NULL, skipColumns = NULL,} \cr
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
72 \code{sliceSize = NULL, omitCharacters = NULL, delimiter = NULL, rowNamesColumn = 1)}:}{ Loads data matrix from a file. \code{filename} should be a character string. The remaining parameters specify the file format and have the same meaning as \code{file*} fields. Additional \code{rowNamesColumn} parameter specifies which of the columns of row labels to use as row names.}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
73 \item{\code{SaveFile(filename)}:}{ Saves the data to a file. \code{filename} should be a character string.}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
74 \item{\code{getSlice(sl)}:}{ Retrieves \code{sl}-th slice of the matrix. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
75 \item{\code{setSlice(sl, value)}:}{ Set \code{sl}-th slice of the matrix. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
76 \item{\code{ColumnSubsample(subset)}:}{ Reorders/subsets the columns according to \code{subset}. \cr
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
77 Acts as \code{M = M[ ,subset]} for a matrix \code{M}. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
78 \item{\code{RowReorder(ordr)}:}{ Reorders rows according to \code{ordr}. \cr
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
79 Acts as \code{M = M[ordr, ]} for a matrix \code{M}. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
80 \item{\code{RowMatrixMultiply(multiplier)}:}{ Multiply each row by the \code{multiplier}. \cr
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
81 Acts as \code{M = M \%*\% multiplier} for a matrix \code{M}. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
82 \item{\code{CombineInOneSlice()}:}{ Combines all slices into one. The whole matrix can then be obtained via \code{$getSlice(1)}. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
83 \item{\code{IsCombined()}:}{ Returns \code{TRUE} if the number of slices is 1 or 0. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
84 \item{\code{ResliceCombined(sliceSize = -1)}:}{ Cuts the data into slices of \code{sliceSize} rows. If \code{sliceSize} is not defined, the value of \code{fileSliceSize} field is used.}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
85 \item{\code{GetAllRowNames()}:}{ Returns all row names in one vector. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
86 \item{\code{RowStandardizeCentered()}:}{ Set the mean of each row to zero and the sum of squares to one. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
87 \item{\code{SetNanRowMean()}:}{ Impute rows with row mean. Rows full of NaN values are imputed with zeros. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
88 \item{\code{RowRemoveZeroEps()}:}{ Removes rows of zeros and those that are nearly zero. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
89 \item{\code{FindRow(rowname)}:}{ Finds row by name. Returns a pair of slice number an row number within the slice. If no row is found, the function returns \code{NULL}. }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
90 \item{\code{rowMeans(x, na.rm = FALSE, dims = 1L)}:}{Returns a vector of row means. Works as \link[base]{rowMeans} but requires \code{dims} to be equal to \code{1L}.}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
91 \item{\code{rowSums(x, na.rm = FALSE, dims = 1L)}:}{Returns a vector of row sums. Works as \link[base]{rowSums} but requires \code{dims} to be equal to \code{1L}.}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
92 \item{\code{colMeans(x, na.rm = FALSE, dims = 1L)}:}{Returns a vector of column means. Works as \link[base]{colMeans} but requires \code{dims} to be equal to \code{1L}.}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
93 \item{\code{colSums(x, na.rm = FALSE, dims = 1L)}:}{Returns a vector of column sums. Works as \link[base]{colSums} but requires \code{dims} to be equal to \code{1L}.}
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
94 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
95 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
96
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
97 \usage{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
98 # x[[i]] indexing allows easy access to individual slices.
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
99 # It is equivalent to x$GetSlice(i) and x$SetSlice(i,value)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
100 \S4method{[[}{SlicedData}(x, i)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
101 \S4method{[[}{SlicedData}(x, i) <- value
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
102
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
103 # The following commands work as if x was a simple matrix object
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
104 \S4method{nrow}{SlicedData}(x)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
105 \S4method{ncol}{SlicedData}(x)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
106 \S4method{dim}{SlicedData}(x)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
107 \S4method{rownames}{SlicedData}(x)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
108 \S4method{colnames}{SlicedData}(x)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
109 \S4method{rownames}{SlicedData}(x) <- value
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
110 \S4method{colnames}{SlicedData}(x) <- value
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
111
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
112 # SlicedData object can be easily transformed into a matrix
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
113 # preserving row and column names
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
114 \S4method{as.matrix}{SlicedData}(x)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
115
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
116 # length(x) can be used in place of x$nSlices()
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
117 # to get the number of slices in the object
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
118 \S4method{length}{SlicedData}(x)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
119 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
120 \arguments{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
121 \item{x}{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
122 \code{\linkS4class{SlicedData}} object.
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
123 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
124 \item{i}{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
125 Number of a slice.
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
126 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
127 \item{value}{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
128 New content for the slice / new row or column names.
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
129 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
130 }
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
131
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
132
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
133 \examples{
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
134
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
135 # Create a SlicedData variable
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
136 sd = SlicedData$new();
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
137
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
138 # Show the details of the empty object
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
139 show(sd);
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
140
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
141 # Create a matrix of values and assign to sd
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
142 mat = matrix(1:12, 3, 4);
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
143 rownames(mat) = c("row1","row2","row3");
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
144 colnames(mat) = c("col1","col2","col3","col4");
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
145 sd$CreateFromMatrix( mat );
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
146
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
147 # Show the detail of the object (one slice)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
148 show(sd);
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
149
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
150 # Slice it in pieces of 2 rows
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
151 sd$ResliceCombined(sliceSize = 2L);
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
152
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
153 # Show the number of slices (equivalent function calls)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
154 sd$nSlices()
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
155 length(sd)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
156
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
157 # Is it all in one slice? (No)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
158 sd$IsCombined()
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
159
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
160 # Show the column names (equivalent function calls)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
161 sd$columnNames
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
162 colnames(sd)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
163
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
164 # Show row name slices
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
165 sd$rowNameSlices
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
166
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
167 # Show all row names (equivalent function calls)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
168 sd$GetAllRowNames()
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
169 rownames(sd)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
170
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
171 # Print the second slice
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
172 print( sd[[2]] )
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
173
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
174 # Reorder and subset columns
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
175 sd$ColumnSubsample( c(1,3,4) );
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
176
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
177 # Reorder and subset rows
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
178 sd$RowReorder( c(3,1) );
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
179
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
180 # Show the detail of the object (one slice again)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
181 show(sd);
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
182
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
183 # Is it all in one slice? (Yes)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
184 sd$IsCombined()
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
185
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
186 # Find the row with name "row1" (it is second in the first slice)
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
187 sd$FindRow("row1");
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
188
cd4c8e4a4b5b Uploaded
jasonxu
parents:
diff changeset
189 }