Skip to contents

For a given dataset with locations and labels, compute the label composition of the neighborhood for each sample.

Usage

knnComposition(location, k = 6, labels, alpha = 0.5, ...)

Arguments

location

A numeric data matrix containing location information, where rows are points and columns are location dimensions.

k

The number of nearest neighbors to look at.

labels

A vector containing the label for the dataset.

alpha

The parameter to control to what extend the spot itself contribute to the class composition calculation. "equal" means it is weighted the same as other neighbors. A numeric value between 0 and 1 means the weight of the frequency contribution for the spot itself, and the frequency contribution for its knn is then 1-alpha. By default 0.5.

...

Optional arguments for findSpatialKNN().

Value

A numerical matrix indicating the composition, where rows correspond to samples and columns correspond to the classes in label.

Examples

data(sp_toys)
data <- sp_toys
knnComposition(data[,c("x", "y")], k=6, data$label)
#>             1         2
#> 1   0.0000000 1.0000000
#> 2   0.0000000 1.0000000
#> 3   0.0000000 1.0000000
#> 4   0.1428571 0.8571429
#> 5   0.6666667 0.3333333
#> 6   1.0000000 0.0000000
#> 7   1.0000000 0.0000000
#> 8   1.0000000 0.0000000
#> 9   1.0000000 0.0000000
#> 10  1.0000000 0.0000000
#> 11  1.0000000 0.0000000
#> 12  1.0000000 0.0000000
#> 13  1.0000000 0.0000000
#> 14  1.0000000 0.0000000
#> 15  1.0000000 0.0000000
#> 16  0.0000000 1.0000000
#> 17  0.0000000 1.0000000
#> 18  0.0000000 1.0000000
#> 19  0.1666667 0.8333333
#> 20  0.8333333 0.1666667
#> 21  1.0000000 0.0000000
#> 22  1.0000000 0.0000000
#> 23  1.0000000 0.0000000
#> 24  1.0000000 0.0000000
#> 25  1.0000000 0.0000000
#> 26  1.0000000 0.0000000
#> 27  1.0000000 0.0000000
#> 28  1.0000000 0.0000000
#> 29  1.0000000 0.0000000
#> 30  1.0000000 0.0000000
#> 31  0.0000000 1.0000000
#> 32  0.0000000 1.0000000
#> 33  0.0000000 1.0000000
#> 34  0.0000000 1.0000000
#> 35  0.1666667 0.8333333
#> 36  0.8333333 0.1666667
#> 37  1.0000000 0.0000000
#> 38  1.0000000 0.0000000
#> 39  1.0000000 0.0000000
#> 40  1.0000000 0.0000000
#> 41  1.0000000 0.0000000
#> 42  1.0000000 0.0000000
#> 43  1.0000000 0.0000000
#> 44  1.0000000 0.0000000
#> 45  1.0000000 0.0000000
#> 46  0.0000000 1.0000000
#> 47  0.0000000 1.0000000
#> 48  0.0000000 1.0000000
#> 49  0.0000000 1.0000000
#> 50  0.1666667 0.8333333
#> 51  0.8333333 0.1666667
#> 52  1.0000000 0.0000000
#> 53  1.0000000 0.0000000
#> 54  1.0000000 0.0000000
#> 55  1.0000000 0.0000000
#> 56  1.0000000 0.0000000
#> 57  1.0000000 0.0000000
#> 58  1.0000000 0.0000000
#> 59  1.0000000 0.0000000
#> 60  1.0000000 0.0000000
#> 61  0.0000000 1.0000000
#> 62  0.0000000 1.0000000
#> 63  0.0000000 1.0000000
#> 64  0.0000000 1.0000000
#> 65  0.0000000 1.0000000
#> 66  0.1666667 0.8333333
#> 67  0.8333333 0.1666667
#> 68  1.0000000 0.0000000
#> 69  1.0000000 0.0000000
#> 70  1.0000000 0.0000000
#> 71  1.0000000 0.0000000
#> 72  1.0000000 0.0000000
#> 73  1.0000000 0.0000000
#> 74  1.0000000 0.0000000
#> 75  1.0000000 0.0000000
#> 76  0.0000000 1.0000000
#> 77  0.0000000 1.0000000
#> 78  0.0000000 1.0000000
#> 79  0.0000000 1.0000000
#> 80  0.0000000 1.0000000
#> 81  0.1666667 0.8333333
#> 82  0.8333333 0.1666667
#> 83  1.0000000 0.0000000
#> 84  1.0000000 0.0000000
#> 85  1.0000000 0.0000000
#> 86  1.0000000 0.0000000
#> 87  1.0000000 0.0000000
#> 88  1.0000000 0.0000000
#> 89  1.0000000 0.0000000
#> 90  1.0000000 0.0000000
#> 91  0.0000000 1.0000000
#> 92  0.0000000 1.0000000
#> 93  0.0000000 1.0000000
#> 94  0.0000000 1.0000000
#> 95  0.0000000 1.0000000
#> 96  0.0000000 1.0000000
#> 97  0.1666667 0.8333333
#> 98  0.8333333 0.1666667
#> 99  1.0000000 0.0000000
#> 100 1.0000000 0.0000000
#> 101 1.0000000 0.0000000
#> 102 1.0000000 0.0000000
#> 103 1.0000000 0.0000000
#> 104 1.0000000 0.0000000
#> 105 1.0000000 0.0000000
#> 106 0.0000000 1.0000000
#> 107 0.0000000 1.0000000
#> 108 0.0000000 1.0000000
#> 109 0.0000000 1.0000000
#> 110 0.0000000 1.0000000
#> 111 0.0000000 1.0000000
#> 112 0.1666667 0.8333333
#> 113 0.8333333 0.1666667
#> 114 1.0000000 0.0000000
#> 115 1.0000000 0.0000000
#> 116 1.0000000 0.0000000
#> 117 1.0000000 0.0000000
#> 118 1.0000000 0.0000000
#> 119 1.0000000 0.0000000
#> 120 1.0000000 0.0000000
#> 121 0.0000000 1.0000000
#> 122 0.0000000 1.0000000
#> 123 0.0000000 1.0000000
#> 124 0.0000000 1.0000000
#> 125 0.0000000 1.0000000
#> 126 0.0000000 1.0000000
#> 127 0.0000000 1.0000000
#> 128 0.1666667 0.8333333
#> 129 0.8333333 0.1666667
#> 130 1.0000000 0.0000000
#> 131 1.0000000 0.0000000
#> 132 1.0000000 0.0000000
#> 133 1.0000000 0.0000000
#> 134 1.0000000 0.0000000
#> 135 1.0000000 0.0000000
#> 136 0.0000000 1.0000000
#> 137 0.0000000 1.0000000
#> 138 0.0000000 1.0000000
#> 139 0.0000000 1.0000000
#> 140 0.0000000 1.0000000
#> 141 0.0000000 1.0000000
#> 142 0.0000000 1.0000000
#> 143 0.1666667 0.8333333
#> 144 0.8333333 0.1666667
#> 145 1.0000000 0.0000000
#> 146 1.0000000 0.0000000
#> 147 1.0000000 0.0000000
#> 148 1.0000000 0.0000000
#> 149 1.0000000 0.0000000
#> 150 1.0000000 0.0000000
#> 151 0.0000000 1.0000000
#> 152 0.0000000 1.0000000
#> 153 0.0000000 1.0000000
#> 154 0.0000000 1.0000000
#> 155 0.0000000 1.0000000
#> 156 0.0000000 1.0000000
#> 157 0.0000000 1.0000000
#> 158 0.0000000 1.0000000
#> 159 0.1666667 0.8333333
#> 160 0.8333333 0.1666667
#> 161 1.0000000 0.0000000
#> 162 1.0000000 0.0000000
#> 163 1.0000000 0.0000000
#> 164 1.0000000 0.0000000
#> 165 1.0000000 0.0000000
#> 166 0.0000000 1.0000000
#> 167 0.0000000 1.0000000
#> 168 0.0000000 1.0000000
#> 169 0.0000000 1.0000000
#> 170 0.0000000 1.0000000
#> 171 0.0000000 1.0000000
#> 172 0.0000000 1.0000000
#> 173 0.0000000 1.0000000
#> 174 0.1666667 0.8333333
#> 175 0.8333333 0.1666667
#> 176 1.0000000 0.0000000
#> 177 1.0000000 0.0000000
#> 178 1.0000000 0.0000000
#> 179 1.0000000 0.0000000
#> 180 1.0000000 0.0000000
#> 181 0.0000000 1.0000000
#> 182 0.0000000 1.0000000
#> 183 0.0000000 1.0000000
#> 184 0.0000000 1.0000000
#> 185 0.0000000 1.0000000
#> 186 0.0000000 1.0000000
#> 187 0.0000000 1.0000000
#> 188 0.0000000 1.0000000
#> 189 0.0000000 1.0000000
#> 190 0.1666667 0.8333333
#> 191 0.8333333 0.1666667
#> 192 1.0000000 0.0000000
#> 193 1.0000000 0.0000000
#> 194 1.0000000 0.0000000
#> 195 1.0000000 0.0000000
#> 196 0.0000000 1.0000000
#> 197 0.0000000 1.0000000
#> 198 0.0000000 1.0000000
#> 199 0.0000000 1.0000000
#> 200 0.0000000 1.0000000
#> 201 0.0000000 1.0000000
#> 202 0.0000000 1.0000000
#> 203 0.0000000 1.0000000
#> 204 0.0000000 1.0000000
#> 205 0.1666667 0.8333333
#> 206 0.8333333 0.1666667
#> 207 1.0000000 0.0000000
#> 208 1.0000000 0.0000000
#> 209 1.0000000 0.0000000
#> 210 1.0000000 0.0000000
#> 211 0.0000000 1.0000000
#> 212 0.0000000 1.0000000
#> 213 0.0000000 1.0000000
#> 214 0.0000000 1.0000000
#> 215 0.0000000 1.0000000
#> 216 0.0000000 1.0000000
#> 217 0.0000000 1.0000000
#> 218 0.0000000 1.0000000
#> 219 0.0000000 1.0000000
#> 220 0.0000000 1.0000000
#> 221 0.1666667 0.8333333
#> 222 0.8333333 0.1666667
#> 223 1.0000000 0.0000000
#> 224 1.0000000 0.0000000
#> 225 1.0000000 0.0000000
#> 226 0.0000000 1.0000000
#> 227 0.0000000 1.0000000
#> 228 0.0000000 1.0000000
#> 229 0.0000000 1.0000000
#> 230 0.0000000 1.0000000
#> 231 0.0000000 1.0000000
#> 232 0.0000000 1.0000000
#> 233 0.0000000 1.0000000
#> 234 0.0000000 1.0000000
#> 235 0.0000000 1.0000000
#> 236 0.2857143 0.7142857
#> 237 0.8571429 0.1428571
#> 238 1.0000000 0.0000000
#> 239 1.0000000 0.0000000
#> 240 1.0000000 0.0000000