Это немного сложно объяснить, поэтому я надеюсь, что это достаточно ясно, но если нет, я попытаюсь расширить его.
Итак, у меня есть такой фрейм данных:
df <- data.frame(index=sort(runif(300, -10,10)), v1=runif(300, -2,-1), v2=runif(300, 1,2))
Это дает нам 3-колоночный 300-рядный df. Первый столбец («index») содержит отсортированные значения от -10 до 10, а следующие два столбца («v1» / «v2») содержат случайные числовые значения, которые не важны для этой проблемы.
СейчасЯ классифицирую свои строки df в децилях в соответствии со столбцом индекса (например, дециль 1: места 1-30, дециль 2: места 31-60), и я хочу произвольно менять местами строки так, чтобы все значения 1-го дециля менялись случайным образомс 6-м децилем все значения 2-го дециля меняются случайным образом с 7-м децилем и так далее. Когда я говорю swapped, я имею в виду, что значение индекса остается на своем месте, но значения v1 и v2 меняются местами (все еще связаны) с v1 и v2 случайной строки в соответствующем дециле.
Например,v1 и v2 первого ряда в df (и, следовательно, из 1-го дециля) будут заменены v1 и v2 160-го ряда в df (6-м дециле), v1 и v2 второго ряда в df(1-й дециль) поменяется местами v1 и v2 175-й строки в df (также 6-й децил), v1 и v2 31-й строки в df (2-й децил) поменяется местами v1 и v2186-я строка в df (7-й дециль) и т. Д., Поэтому все значения v1 + v2 случайным образом меняются местами в соответствии с их соответствующим новым децилем.
Надеюсь, все ясно. Я пытался решить это часами и не мог понять.
Спасибо