私は動物追跡プロジェクトを行っています。 「finaltrimmed」私のデータは、私は基本的に時間をかけてどのように個々の昆虫の動きを追跡し、それぞれ独自のTrackIndex、の行を作成したいこのポイント座標からSpatialLinesDataFrameを作成する
TrackIndex Time x_position y_position
1 1 0.1034 425 171
2 1 0.1379 425 169
3 1 0.1724 427 166
.........
125 25 1.1030 462 397
126 25 1.1380 462 397
127 25 1.1720 462 397
128 25 1.2070 462 397
129 25 1.2410 461 398
130 25 1.2760 462 399
131 25 1.3100 461 399
132 25 1.3450 461 399
133 25 1.3790 460 399
134 25 1.4140 460 399
.....
268 41 1.8280 302 280
269 41 1.8620 303 279
270 41 1.8970 302 280
271 41 1.9310 302 280
272 41 1.9660 302 281
273 41 2.0000 302 281
274 41 2.0340 302 281
275 41 2.0690 302 282
276 41 2.1030 302 282
277 41 2.1380 302 282
278 41 2.1720 302 283
........
のように見えます。そこから、私は、TrackIndexに基づいてSpatialLinesDataFrameを作成します。最終的には、 "adehabitatMA"パッケージの "buffer"機能を使って各行の周りにバッファ領域を作成したいと思います。
次のコマンドを使用してSpatialPointsDataFrameを作成できました。
xy<-cbind(finaltrimmed$x_position,finaltrimmed$y_position)
MatrixofPoints<-matrix(xy,ncol=2)
points<-SpatialPoints(MatrixofPoints)
dataframe=data.frame(finaltrimmed$TrackIndex)
df.points<-SpatialPointsDataFrame(points,dataframe)
しかし、同様の方法でSpatialLinesDataFrameを作成することができませんでした。
私の考えは、データフレームを「スプリット」機能で「最後にトリミング」することです。 1246 347.0 316 214 1 2:私は次のようなデータ構造 $ 1
TrackIndex時間X_POSITIONのY_POSITIONのnewIndexが 1与え
splitfinal<-split(finaltrimmed,finaltrimmed$TrackIndex)
1246 347.0 316 214 2 を...... 57:1246 348.9 325 201 57 58:1246 349.0 330 201 58 TrackIndex時間X_POSITION Y_POSITION newIndexが
$ 25
TrackIndex時間X_POSITION Y_POSITION newIndexが 1:1318 363.6 375 422 1 2:1318 363.7 375 422 2 ..... 57:1318 365.6 399 406 57 58:1318 365.6 400 406 58 そこから、Iはxとyの位置をCBINDでき"splitfinal"(この手順は、 "splitfinal"がリストのリストであるために機能しませんでした)。 SpatialLinesDataFrameを作成するために必要なLinesクラスの作成方法もわかりません。
私は何日も立ち往生しており、道を見出すことができませんでした。
誰でも手助けできますか?ここで
はそれを自分自身を使用していないが、これは仕事ができる:https://でrpubs.com/walkerke/points_to_line – lbusett