Anne Elise
Anne Elise

Reputation: 163

How can I define groups based on another variable?

I need to define patches for each individual (id) based on the values of a variable (bmode).

bmode> 1.75 was classified as "ARS", bmode ≤ 1.75 was classified as "TRANS", intermediate values were designated as "IND".

Now, for 3 or more successive locations where ARS behavior has been predicted and ends after 3 or more consecutive locations with an estimated bmode ≤ 1.75 (TRANS or IND), I want to define a patch.

EXAMPLE

   lon      lat      id    bmode States pacth
-39.0436 -18.02402 7617.05 1.535    IND  
-39.0296 -18.02142 7617.05 1.844    ARS  1
-39.0588 -18.01219 7617.05 1.849    ARS  1
-38.9866 -18.06814 7617.05 1.871    ARS  1 
-38.9284 -18.07950 7617.05 1.894    IND  1
-38.8484 -18.12347 7617.05 1.892    ARS  1
-38.7905 -18.17230 7617.05 1.887    ARS  1
-38.7301 -18.20727 7617.05 1.895    ARS  1
-38.6774 -18.23565 7617.05 1.610   TRANS 
-38.6135 -18.27840 7617.05 1.567   TRANS 
-38.5408 -18.32210 7617.05 1.604    ARS  1
-38.4892 -18.35557 7617.05 1.690    ARS  1
-38.3138 -18.48745 7617.05 1.883   TRANS  
-38.2723 -18.52985 7617.05 1.900    IND  
-38.1407 -18.59948 7617.05 1.914   TRANS 
-38.2632 -18.56872 7617.05 1.889   TRANS 
-38.2459 -18.62644 7617.05 1.923    IND  
-38.2459 -18.62644 7617.05 1.923    ARS  2
-38.2459 -18.62644 7617.05 1.923    ARS  2
-38.2459 -18.62644 7617.05 1.923    ARS  2
-38.2459 -18.62644 7617.05 1.923    ARS  2

an example of my data:

structure(list(lon = c(-39.0436, -39.0296, -39.0588, -38.9866, 
-38.9284, -38.8484, -38.7905, -38.7301, -38.6774, -38.6135, -38.5408, 
-38.4892, -38.456, -38.3919, -38.3138, -38.2723, -38.1407, -38.2632, 
-38.2459, -38.2747, -38.2987, -38.3141, -38.3579, -38.392, -38.3896, 
-38.5027, -38.4808, -38.4915, -38.489, -38.5068, -38.5032, -38.5519, 
-38.5004, -38.6994, -38.6495, -38.6962, -38.7376, -38.7495, -38.7878, 
-38.8156, -38.8991, -38.9015, -38.8313, -38.7827, -38.7274, -38.6641, 
-38.6264, -38.5812, -38.4883, -38.5955, -38.5487, -38.5492, -38.5533, 
-38.5437, -38.5473, -38.5573, -38.525, -38.5888, -38.5459, -38.5435, 
-38.5415, -38.5414, -38.5196, -38.5127, -38.4951, -38.4738, -38.9912, 
-38.9995, -39.0267, -39.0119, -39.0007, -38.9933, -38.9914, -38.9781, 
-38.9652, -38.9589, -38.9566, -38.9364, -38.9324, -38.9192, -38.9151, 
-38.9127, -38.8989, -38.9196, -38.9466, -38.9368, -38.9212, -38.9372, 
-38.9017, -38.9075, -38.8863, -38.8964, -38.8982, -38.8865, -38.8728, 
-38.8712, -38.8494, -38.8808, -38.8027, -39.0087, -38.8636, -38.9025, 
-38.8767, -38.8935, -38.9005, -38.8938, -38.8937, -38.886, -38.9047, 
-38.9323, -38.9107, -38.9282, -38.9236, -38.9349, -38.9583, -38.9594, 
-38.9672, -38.9692, -38.984, -38.9818, -38.9836, -38.987, -39.0182, 
-38.9936, -39.2264, -39.204, -39.1369, -39.0456, -39.037, -39.0432, 
-39.053, -39.077, -39.0476, -38.9099, -38.5897, -38.3935, -38.3281, 
-38.2372, -38.1516, -39.4011, -39.4007, -39.381, -39.3143, -39.1883, 
-39.0848, -38.9683, -38.8596, -38.7436, -38.6208, -38.5017, -38.4042, 
-38.0645, -38.2054, -38.3541, -38.4964, -38.9432, -40.0811, -40.2097, 
-40.3045, -40.407, -40.6094, -40.8267, -40.9868, -41.1445, -41.2936, 
-41.4341, -41.5481, -41.6938, -39.3414, -39.3416, -39.3364, -39.3057, 
-39.2835, -39.1992, -39.2, -39.1865, -39.193, -39.2, -39.138, 
-39.2061, -39.3888, -39.4961, -39.4485, -39.5003, -39.4973, -39.4007, 
-39.2943, -39.2218, -39.1768, -39.2, -39.1, -38.9024, -38.8, 
-38.7925, -38.7005, -38.7008, -38.6006, -38.4998, -38.4049, -38.3037, 
-38.2385, -38.6517, -38.7984, -38.8361, -38.9007, -38.9004, -38.9071, 
-38.9349, -39, -39, -38.9007, -38.9968, -38.9964, -38.8311, -38.7335, 
-38.7004, -38.6765, -38.6955, -38.7974, -38.8001, -38.7009, -38.3625, 
-38.1997, -38.0234, -38.0097, -38.0992, -38.0534, -38.3628, -38.5987, 
-38.8076, -39.0003, -38.9904, -38.9892, -39.0679, -39.0001, -38.9249, 
-38.9079, -38.8996, -38.8108, -38.7311, -38.6322, -38.5035, -38.3582, 
-38.2991, -38.1159, -37.9348, -37.9852, -38.0631, -38.0841, -38.1274, 
-38.1185, -38.1229, -38.1062, -38.1396, -39.5231, -39.5125, -39.5115, 
-39.4903, -39.3941, -39.2933, -39.2113, -39.1423, -39.0942, -38.9999, 
-38.9014, -38.7997, -38.6007, -38.3894, -38.399, -38.4991, -38.5256, 
-38.698, -38.7655, -38.7009, -38.8008, -38.8841, -39.0272, -39.2955, 
-39.4852, -39.595, -39.6854, -39.7021, -39.8057, -39.9, -39.8877, 
-39.9994, -40.1642, -40.2322, -40.4992, -40.5, -40.4113, -40.5989, 
-40.7881, -40.7424, -40.606, -40.7425, -41.0996, -41.3999, -41.4023, 
-41.34, -41.2041, -41.1046, -41.2085, -41.2099, -41.2036, -41.2017, 
-41.101, -41.1847, -41.1793, -39.4168, -39.3946, -39.3536, -39.3344, 
-39.2869, -39.1997, -39.1979, -39.2196, -39.1841, -39.2093, -39.1753, 
-39.2057, -39.3412, -39.4862, -39.4655, -39.4503, -39.4887, -39.419, 
-39.3, -39.2001, -39.1905, -39.251, -39.2412, -39.2393, -39.189, 
-39.1328, -39.0298, -39.0582, -39.0574, -39.1507, -39.2034, -39.31, 
-39.3919, -39.4083, -39.0972, -39.1034, -39.1037, -39.1037, -39.2003, 
-39.2021, -39.1909, -39.2032, -39.2249, -39.1716, -39.1308, -39.1119, 
-39.3016, -39.2012, -39.0924, -38.8427, -38.9537, -39.2016, -39.2264, 
-39.1369, -38.8921, -39.1652, -39.0994, -38.9567, -39.1001, -39.2001, 
-39.2133, -39.0095, -38.8004, -38.4988, -38.3823, -38.2979, -38.4626, 
-38.4594, -38.5929, -38.861, -39.0009, -39.2179, -39.4608, -39.3378, 
-39.1553, -39.0425, -38.8626, -38.7, -38.8006, -38.8603, -38.8204, 
-38.6832, -38.955, -39.0196, -39.0073, -38.9121, -38.9039, -39.0539, 
-39.0748, -39.0152, -39.1352, -39.1422, -39.1786, -39.0992, -39.0336, 
-39.1611, -39.2103, -39.0897, -39.0961, -38.9633, -39.0134, -39.063, 
-38.8858, -38.8796, -38.6352, -38.8996, -38.6986, -38.4001, -38.9006, 
-39.0748, -39.0212, -39.1937, -38.9995, -38.891, -39.2152, -39.165, 
-38.9324, -38.7929, -38.741, -38.7026, -38.6067, -38.6719, -38.6988, 
-38.602, -38.6632, -38.597, -38.7529, -38.8518, -38.8986, -38.9405, 
-38.9459, -39.0497, -39.041, -38.8758, -38.6317, -38.5749, -38.4637, 
-38.5049, -38.704, -38.8656, -39.1987, -39.0995, -39.2397, -39.1808, 
-39.1631, -39.1943, -39.1972, -39.2266, -39.1289, -38.9703, -39.0081, 
-39.0031, -38.8355, -39.0236, -39.156, -39.2171, -39.2668, -39.3938, 
-39.2251, -39.2487, -39.2459, -39.141, -39.2095, -39.2157, -39.1825, 
-39.1866, -39.2747, -39.3956, -39.4894, -39.6178, -39.6336, -39.805, 
-39.8563, -40.1559, -40.3032, -40.2284, -40.2159, -40.1976, -40.177, 
-40.2168, -40.412, -40.462, -40.5478, -40.6394, -40.7387, -40.8329, 
-40.9126, -41.4315, -41.5374, -41.6369, -41.6646), lat = c(-18.02402, 
-18.02142, -18.01219, -18.06814, -18.0795, -18.12347, -18.1723, 
-18.20727, -18.23565, -18.2784, -18.3221, -18.35557, -18.40036, 
-18.43992, -18.48745, -18.52985, -18.59948, -18.56872, -18.62644, 
-18.64082, -18.68058, -18.71468, -18.75885, -18.77, -18.84994, 
-18.73186, -18.67437, -18.61312, -18.54152, -18.44923, -18.39034, 
-18.31269, -18.23386, -18.18817, -18.26355, -18.29528, -18.34884, 
-18.38988, -18.42106, -18.47147, -18.49385, -18.56982, -18.64914, 
-18.73588, -18.83264, -18.92236, -18.99768, -19.08327, -19.17413, 
-19.22802, -19.23173, -19.26408, -19.26973, -19.2927, -19.30199, 
-19.32348, -19.32296, -19.37331, -19.35441, -19.33839, -19.33868, 
-19.34228, -19.32594, -19.32932, -19.32141, -19.32491, -18.02301, 
-18.02199, -18.01843, -17.98781, -17.99012, -17.96139, -17.9304, 
-17.93597, -17.90333, -17.88244, -17.8396, -17.82455, -17.80983, 
-17.78898, -17.75384, -17.7464, -17.70714, -17.72363, -17.72188, 
-17.76075, -17.77719, -17.79589, -17.80181, -17.81844, -17.82241, 
-17.8301, -17.87149, -17.86871, -17.89045, -17.90092, -17.90884, 
-17.9377, -17.90441, -18.00828, -17.84275, -17.87748, -17.82021, 
-17.80229, -17.77197, -17.74166, -17.737, -17.69544, -17.69303, 
-17.67834, -17.67988, -17.66128, -17.67948, -17.64256, -17.67702, 
-17.607, -17.51752, -17.54804, -17.52722, -17.526, -17.53338, 
-17.54474, -17.51622, -17.52166, -17.86486, -17.90145, -18.0595, 
-18.14773, -18.14872, -18.15635, -18.17435, -18.19286, -18.23657, 
-18.38954, -18.7366, -18.89027, -18.93263, -19.04261, -19.17285, 
-18.4273, -18.44206, -18.4845, -18.4569, -18.42714, -18.36749, 
-18.36747, -18.32874, -18.32528, -18.28197, -18.24051, -18.48086, 
-18.85006, -19.03107, -19.24998, -19.44773, -19.52156, -22.10358, 
-22.21323, -22.32764, -22.44473, -22.59722, -22.73591, -22.92008, 
-23.12157, -23.29309, -23.43957, -23.5776, -23.72088, -18.44447, 
-18.44131, -18.44387, -18.44202, -18.48266, -18.35741, -18.34456, 
-18.32933, -18.35983, -18.39339, -18.36469, -18.3177, -18.35569, 
-18.43664, -18.45995, -18.53672, -18.56055, -18.58153, -18.47189, 
-18.37184, -18.19579, -18.0331, -18.00999, -18.12419, -18.07555, 
-17.99255, -18.01425, -18.06793, -18.05391, -17.94169, -17.97274, 
-17.77039, -17.67259, -17.19299, -17.07173, -16.96194, -16.98228, 
-16.9302, -16.96326, -16.84489, -16.80174, -16.63965, -16.50935, 
-16.44315, -16.46109, -16.34532, -16.22342, -16.18113, -16.05155, 
-15.95393, -15.90826, -15.90226, -15.83392, -16.00347, -16.0011, 
-16.00011, -15.98295, -16.15189, -16.28953, -16.35196, -16.43742, 
-16.55924, -16.72329, -16.8363, -16.88674, -17.02453, -17.12698, 
-17.32562, -17.57759, -17.74445, -17.88113, -17.88744, -17.88834, 
-17.87424, -17.97989, -18.11516, -18.14315, -18.27988, -18.3193, 
-18.33417, -18.37861, -18.5595, -18.62298, -18.73212, -18.86317, 
-18.94096, -18.60213, -18.60587, -18.5927, -18.54379, -18.57095, 
-18.45538, -18.30153, -18.18447, -18.0963, -18.15262, -18.09676, 
-18.22024, -18.28832, -18.37081, -18.66226, -18.8806, -19.09537, 
-19.27619, -19.48896, -19.47133, -19.4608, -19.33534, -19.42321, 
-19.45569, -19.51056, -19.58516, -19.67388, -19.81114, -19.85125, 
-20.03122, -20.27147, -20.46503, -20.61422, -20.80607, -20.8755, 
-20.97907, -21.20379, -21.36214, -21.61505, -21.87859, -22.05029, 
-22.17569, -22.41654, -22.50441, -22.48673, -22.63791, -22.44871, 
-22.82374, -22.73213, -22.68075, -22.5403, -22.41877, -22.32014, 
-22.29147, -22.2726, -18.49871, -18.50145, -18.52302, -18.40275, 
-18.50623, -18.34748, -18.33903, -18.27961, -18.35606, -18.39349, 
-18.36117, -18.32013, -18.3906, -18.42139, -18.49445, -18.5598, 
-18.55424, -18.56981, -18.47855, -18.34729, -18.22737, -18.72667, 
-18.73292, -18.73578, -18.82119, -18.89708, -18.80726, -18.57088, 
-18.61347, -18.47227, -18.55633, -18.65579, -18.7458, -18.82853, 
-19.06462, -19.1603, -19.21777, -19.29835, -19.29846, -19.30373, 
-19.40169, -19.2734, -19.1093, -19.06992, -19.02918, -18.96575, 
-18.77895, -18.54488, -18.36768, -18.38553, -18.40019, -18.40327, 
-18.28421, -18.40674, -18.55265, -18.33226, -18.43165, -18.48707, 
-18.43923, -18.34192, -18.37231, -18.37565, -18.32266, -18.39222, 
-18.46668, -18.36093, -18.32199, -18.4016, -18.48973, -18.66299, 
-18.83083, -18.69995, -18.9315, -18.88982, -18.88632, -18.97422, 
-19.14254, -19.38316, -19.23632, -19.2226, -19.17053, -19.26764, 
-19.28096, -19.29691, -19.44999, -19.37346, -19.21931, -19.28637, 
-19.26362, -19.26896, -19.25474, -19.26335, -19.29258, -19.02462, 
-19.05374, -18.83649, -18.64555, -18.54311, -18.44952, -18.39345, 
-18.45872, -18.47549, -18.32906, -18.43081, -18.50044, -18.46383, 
-18.40977, -18.38866, -18.36127, -18.42811, -18.61827, -18.85362, 
-19.02869, -19.30944, -19.34678, -19.37545, -19.44626, -19.39368, 
-19.26903, -19.1499, -19.17553, -19.03265, -18.86333, -18.91773, 
-18.83886, -18.86041, -18.82287, -18.76703, -18.6551, -18.60335, 
-18.60044, -18.66279, -18.7035, -18.85942, -19.03984, -19.06231, 
-19.01536, -19.06944, -19.05, -19.1322, -18.98444, -18.96721, 
-19.12118, -19.04001, -19.03243, -18.38454, -18.39538, -18.41778, 
-18.41852, -18.35118, -18.13682, -18.15383, -17.95502, -17.93224, 
-17.95541, -18.06734, -18.13123, -18.19873, -18.39062, -18.67687, 
-18.79011, -19.10935, -19.12687, -19.27263, -19.21628, -19.12258, 
-19.24072, -19.3667, -19.48665, -19.60648, -19.75132, -19.93728, 
-20.01678, -20.26459, -20.47156, -20.48558, -20.52792, -20.56808, 
-20.58172, -20.67554, -20.70199, -20.85253, -20.96789, -21.09977, 
-21.2384, -21.38706, -21.52404, -22.26495, -22.40997, -22.56755, 
-22.62307), id = c(7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 
7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 
7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 
7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 
7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 
7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 
7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 
7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 
7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 
7617.05, 7617.05, 7617.05, 7617.05, 7617.05, 7618.05, 7618.05, 
7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 
7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 
7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 
7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 
7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 
7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 
7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 
7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 7618.05, 
10946.05, 10946.05, 10946.05, 10946.05, 10946.05, 10946.05, 10946.05, 
10946.05, 10946.05, 10946.05, 10946.05, 10946.05, 10946.05, 10946.05, 
10946.05, 20162.03, 20162.03, 20162.03, 20162.03, 20162.03, 20162.03, 
20162.03, 20162.03, 20162.03, 20162.03, 20162.03, 20162.03, 20162.03, 
20162.03, 20162.03, 20162.03, 20162.03, 20162.03, 20162.03, 20162.03, 
20162.03, 20162.03, 20162.03, 20162.03, 20162.03, 20162.03, 20162.03, 
20162.03, 20162.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 
20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 
20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 
20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 
20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 
20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 
20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 
20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 
20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 
20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 
20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 
20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 20687.03, 
20687.03, 20687.03, 20687.03, 20687.03, 21791.03, 21791.03, 21791.03, 
21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 
21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 
21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 
21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 
21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 
21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 
21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 21791.03, 
21791.03, 21791.03, 21791.03, 21792.03, 21792.03, 21792.03, 21792.03, 
21792.03, 21792.03, 21792.03, 21792.03, 21792.03, 21792.03, 21792.03, 
21792.03, 21792.03, 21792.03, 21792.03, 21792.03, 21792.03, 21792.03, 
21792.03, 21792.03, 21792.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 21800.03, 
21800.03, 21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 
21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 
21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 
21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 
21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 
21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 21809.03, 
21809.03, 21809.03, 21809.03, 21809.03, 21809.03), bmode = c(1.535, 
1.844, 1.849, 1.871, 1.894, 1.892, 1.887, 1.895, 1.91, 1.867, 
1.904, 1.89, 1.894, 1.88, 1.883, 1.9, 1.914, 1.889, 1.923, 1.901, 
1.908, 1.904, 1.918, 1.921, 1.899, 1.869, 1.9, 1.906, 1.903, 
1.902, 1.907, 1.913, 1.898, 1.9, 1.921, 1.91, 1.919, 1.909, 1.932, 
1.907, 1.917, 1.869, 1.911, 1.887, 1.914, 1.895, 1.911, 1.925, 
1.915, 1.897, 1.92, 1.904, 1.93, 1.924, 1.93, 1.91, 1.909, 1.884, 
1.898, 1.916, 1.909, 1.913, 1.917, 1.912, 1.907, NA, 1.546, 1.873, 
1.898, 1.926, 1.941, 1.929, 1.938, 1.928, 1.934, 1.926, 1.914, 
1.932, 1.936, 1.928, 1.938, 1.923, 1.925, 1.906, 1.905, 1.946, 
1.945, 1.956, 1.94, 1.949, 1.942, 1.957, 1.943, 1.954, 1.94, 
1.945, 1.934, 1.947, 1.938, 1.965, 1.941, 1.958, 1.952, 1.953, 
1.956, 1.95, 1.954, 1.939, 1.944, 1.95, 1.934, 1.955, 1.956, 
1.952, 1.933, 1.976, 1.945, 1.947, 1.95, 1.95, 1.952, 1.946, 
1.931, NA, 1.525, 1.337, 1.341, 1.339, 1.369, 1.364, 1.402, 1.368, 
1.346, 1.261, 1.257, 1.316, 1.326, 1.332, 1.323, 1.529, 1.603, 
1.634, 1.637, 1.67, 1.665, 1.663, 1.659, 1.673, 1.646, 1.688, 
1.507, 1.62, 1.686, 1.621, 1.673, 1.634, 1.597, 1.603, 1.616, 
1.593, 1.594, 1.579, 1.603, 1.579, 1.586, 1.599, 1.603, 1.619, 
1.512, 1.253, 1.199, 1.185, 1.157, 1.153, 1.149, 1.163, 1.129, 
1.102, 1.097, 1.057, 1.05, 1.057, 1.056, 1.064, 1.067, 1.04, 
1.035, 1.021, 1.022, 1.055, 1.024, 1.033, 1.046, 1.057, 1.066, 
1.068, 1.039, 1.064, 1.053, 1.018, 1.023, 1.017, 1.031, 1.059, 
1.08, 1.07, 1.087, 1.056, 1.034, 1.034, 1.072, 1.07, 1.062, 1.032, 
1.043, 1.039, 1.036, 1.034, 1.049, 1.057, 1.035, 1.018, 1.015, 
1.055, 1.083, 1.032, 1.082, 1.004, 1.008, 1.007, 1.043, 1.077, 
1.053, 1.036, 1.024, 1.007, 1.016, 1.034, 1.059, 1.045, 1.033, 
1.038, 1.029, 1.031, 1.026, 1.16, 1.08, 1.069, 1.06, 1.051, 1.05, 
1.043, 1.071, NA, 1.503, 1.312, 1.261, 1.237, 1.158, 1.115, 1.097, 
1.117, 1.123, 1.127, 1.113, 1.065, 1.04, 1.085, 1.027, 1.028, 
1.026, 1.035, 1.089, 1.132, 1.124, 1.122, 1.051, 1.05, 1.063, 
1.16, 1.109, 1.096, 1.074, 1.023, 1.04, 1.03, 1.033, 1.048, 1.072, 
1.054, 1.064, 1.025, 1.028, 1.041, 1.081, 1.022, 1.02, 1.178, 
1.318, 1.494, 1.694, 1.681, 1.338, 1.26, 1.19, 1.188, 1.25, 1.207, 
NA, 1.526, 1.618, 1.647, 1.681, 1.65, 1.617, 1.63, 1.652, 1.62, 
1.64, 1.607, 1.602, 1.596, 1.636, 1.708, 1.716, 1.684, 1.618, 
1.569, 1.583, NA, 1.508, 1.645, 1.728, 1.785, 1.828, 1.647, 1.866, 
1.766, 1.813, 1.619, 1.629, 1.633, 1.66, 1.66, 1.774, 1.769, 
1.748, 1.732, 1.684, 1.812, 1.605, 1.747, 1.765, 1.745, 1.628, 
1.491, 1.393, 1.578, 1.826, 1.586, 1.713, 1.836, 1.523, 1.988, 
1.94, 1.676, 1.861, 1.63, 1.754, 1.712, 1.524, 1.414, 1.568, 
1.734, 1.751, 1.726, 1.597, 1.386, 1.313, 1.701, 1.698, 1.923, 
1.596, 1.649, 1.507, 1.315, 1.951, 1.685, 1.765, 1.772, 1.882, 
1.69, 1.706, 1.851, 1.647, 1.859, 1.72, 1.789, 1.748, 1.757, 
1.861, 1.761, 1.824, 1.848, 1.464, 1.65, 1.682, 1.707, 1.828, 
1.766, 1.789, 1.868, 1.647, 1.93, 1.944, 1.413, 1.99, 1.497, 
1.689, 1.372, 1.61, 1.288, 1.808, 1.874, 1.623, 1.627, 1.635, 
1.645, 1.701, 1.781, 1.548, 1.816, 1.778, 1.769, 1.787, 1.721, 
1.774, 1.72, 1.736, 1.747, 1.731, 1.719, 1.457, 1.742, 1.733, 
1.792, 1.672, 1.617, 1.542, 1.909, 1.792, 1.834, 1.742, NA, 1.528, 
1.78, 1.782, 1.859, 1.819, 1.844, 1.795, 1.87, 1.734, 1.838, 
1.772, 1.883, 1.809, 1.654, 1.722, 1.748, 1.846, 1.78, 1.814, 
1.776, 1.813, 1.75, 1.807, 1.806, 1.79, 1.773, 1.753, 1.803, 
1.655, 1.841, 1.817, 1.856, 1.832, 1.836, 1.766, 1.791, 1.742, 
1.728, 1.734, 1.737, 1.714, 1.735, 1.709, 1.744, 1.803, 1.881
), States = structure(c(2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 1L, 1L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 
2L, 2L, 2L, 1L, 2L, 2L, 1L, 2L, 2L, 2L, 2L, 2L, 1L, 2L, 2L, 1L, 
2L, 1L, 1L, 2L, 1L, 2L, 1L, 2L, 2L, 2L, 2L, 2L, 1L, 2L, 2L, 2L, 
2L, 2L, 2L, 1L, 2L, 2L, 2L, 2L, 1L, 2L, 1L, 1L, 1L, 2L, 2L, 1L, 
2L, 1L, 2L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 
1L, 1L, 2L, 1L, 1L, 2L, 1L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 2L, 2L, 
2L, 2L, 2L, 1L, 2L, 1L, 1L, 1L, 1L, 2L, 1L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 1L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L), .Label = c("ARS", "IND", 
"TRANS"), class = "factor")), row.names = c(1L, 2L, 3L, 4L, 5L, 
6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 16L, 17L, 18L, 
19L, 20L, 21L, 22L, 23L, 24L, 25L, 26L, 27L, 28L, 29L, 30L, 31L, 
32L, 33L, 34L, 35L, 36L, 37L, 38L, 39L, 40L, 41L, 42L, 43L, 44L, 
45L, 46L, 47L, 48L, 49L, 50L, 51L, 52L, 53L, 54L, 55L, 56L, 57L, 
58L, 59L, 60L, 61L, 62L, 63L, 64L, 65L, 66L, 67L, 68L, 69L, 70L, 
71L, 72L, 73L, 74L, 75L, 76L, 77L, 78L, 79L, 80L, 81L, 82L, 83L, 
84L, 85L, 86L, 87L, 88L, 89L, 90L, 91L, 92L, 93L, 94L, 95L, 96L, 
97L, 98L, 99L, 100L, 101L, 102L, 103L, 104L, 105L, 106L, 107L, 
108L, 109L, 110L, 111L, 112L, 113L, 114L, 115L, 116L, 117L, 118L, 
119L, 120L, 121L, 122L, 123L, 124L, 125L, 126L, 127L, 128L, 129L, 
130L, 131L, 132L, 133L, 134L, 135L, 136L, 137L, 138L, 139L, 431L, 
432L, 433L, 434L, 435L, 436L, 437L, 438L, 439L, 440L, 441L, 442L, 
444L, 445L, 446L, 447L, 450L, 475L, 476L, 477L, 478L, 479L, 480L, 
481L, 482L, 483L, 484L, 485L, 486L, 491L, 492L, 493L, 494L, 495L, 
496L, 497L, 498L, 499L, 500L, 501L, 502L, 503L, 504L, 505L, 506L, 
507L, 508L, 509L, 510L, 511L, 512L, 513L, 514L, 515L, 516L, 517L, 
518L, 519L, 520L, 521L, 522L, 523L, 527L, 528L, 529L, 530L, 531L, 
532L, 533L, 534L, 535L, 536L, 537L, 538L, 539L, 540L, 541L, 542L, 
543L, 544L, 545L, 546L, 548L, 549L, 550L, 551L, 552L, 553L, 554L, 
555L, 556L, 557L, 558L, 559L, 560L, 561L, 562L, 563L, 564L, 565L, 
566L, 567L, 568L, 569L, 570L, 571L, 572L, 573L, 574L, 575L, 576L, 
577L, 578L, 579L, 580L, 581L, 582L, 583L, 584L, 585L, 586L, 587L, 
588L, 589L, 590L, 591L, 592L, 593L, 594L, 595L, 596L, 597L, 598L, 
599L, 601L, 602L, 603L, 604L, 605L, 606L, 607L, 608L, 609L, 610L, 
611L, 612L, 613L, 614L, 615L, 616L, 617L, 618L, 619L, 620L, 621L, 
622L, 623L, 624L, 625L, 626L, 627L, 628L, 629L, 630L, 631L, 632L, 
633L, 634L, 635L, 636L, 637L, 638L, 639L, 640L, 641L, 642L, 643L, 
644L, 645L, 646L, 647L, 648L, 649L, 650L, 651L, 652L, 653L, 654L, 
655L, 656L, 657L, 658L, 659L, 660L, 661L, 662L, 663L, 664L, 665L, 
666L, 667L, 668L, 669L, 670L, 671L, 672L, 673L, 674L, 675L, 676L, 
677L, 678L, 679L, 680L, 681L, 682L, 683L, 684L, 685L, 686L, 687L, 
688L, 689L, 690L, 691L, 692L, 693L, 694L, 695L, 696L, 697L, 698L, 
699L, 700L, 701L, 702L, 703L, 704L, 705L, 706L, 707L, 708L, 709L, 
710L, 711L, 712L, 713L, 714L, 715L, 716L, 717L, 718L, 719L, 720L, 
721L, 722L, 723L, 724L, 725L, 726L, 727L, 728L, 729L, 730L, 731L, 
732L, 733L, 734L, 735L, 736L, 737L, 738L, 739L, 740L, 741L, 742L, 
743L, 744L, 745L, 746L, 747L, 748L, 749L, 750L, 751L, 752L, 753L, 
754L, 755L, 756L, 757L, 758L, 759L, 760L, 761L, 762L, 763L, 764L, 
765L, 766L, 767L, 768L, 769L, 770L, 771L, 772L, 773L, 774L, 775L, 
776L, 777L, 778L, 779L, 780L, 781L, 782L, 783L, 784L, 785L, 786L, 
787L, 788L, 789L, 790L, 791L, 792L, 793L, 794L, 795L, 796L, 797L, 
798L, 799L, 800L, 801L, 802L, 803L, 804L, 805L, 806L, 807L, 808L, 
809L, 810L, 811L, 812L, 813L, 814L, 815L, 816L, 817L, 818L, 819L, 
820L, 821L, 822L, 823L, 824L, 825L, 826L, 827L), class = "data.frame")

Upvotes: 0

Views: 88

Answers (1)

rjen
rjen

Reputation: 1972

EDIT: The following will get you some of the way.

library(dplyr)

df %>%
  group_by(id) %>%
  mutate(group = cumsum(case_when(States != 'ARS' ~ TRUE,
                                  States == 'ARS' & 
                                  lag(States != 'ARS') ~ TRUE, 
                                  TRUE ~ FALSE))) %>%
  group_by(id, group) %>%
  mutate(isPatch = if_else('ARS' %in% States & n() > 2, TRUE, FALSE),
         tempPatch = if_else(row_number() == min(row_number()) & 
                             isPatch == TRUE, TRUE, FALSE)) %>%
  group_by(id) %>%
  mutate(patch = if_else(isPatch == TRUE, cumsum(tempPatch), NA_integer_)) %>%
  select(colnames(df), patch)

# # A tibble: 500 x 6
# # Groups:   id [9]
#      lon   lat    id bmode States patch
#    <dbl> <dbl> <dbl> <dbl> <fct>  <int>
# 1  -39.0 -18.0 7617.  1.54 IND       NA
# 2  -39.0 -18.0 7617.  1.84 ARS        1
# 3  -39.1 -18.0 7617.  1.85 ARS        1
# 4  -39.0 -18.1 7617.  1.87 ARS        1
# 5  -38.9 -18.1 7617.  1.89 ARS        1
# 6  -38.8 -18.1 7617.  1.89 ARS        1
# 7  -38.8 -18.2 7617.  1.89 ARS        1
# 8  -38.7 -18.2 7617.  1.90 ARS        1
# 9  -38.7 -18.2 7617.  1.91 ARS        1
# 10 -38.6 -18.3 7617.  1.87 ARS        1
# # … with 490 more rows

Upvotes: 1

Related Questions