групповая нумерация данных - PullRequest
0 голосов
/ 24 марта 2020

У меня есть два файла данных, и я собираюсь выполнить нумерацию групп первого файла на основе номеров во втором файле (как на изображении)

enter image description here вот код:

graphics.off()
rm(list=ls())

df110<-read.csv('C:/Users/Shel3/Desktop/tmr/D1.csv')
df210<-read.csv("C:/Users/Shel3/Desktop/tmr/S1.csv")

mat1<-array(, dim=c(nrow(df110), 1))


b<-cbind(mat1, df110)
i<-1
for(i in 1:nrow(b)){
  for(j in 1:nrow(df210)){
    df210[j,2] 
    b[i:df210[j,2],2] = j 
    i=df210[j,2]+1
  }
}

проблема в том, что программа начинает работать, но кажется, что она никогда не заканчивает обработку, что для этого простого процесса очень странно !! Может ли кто-нибудь, пожалуйста, помогите мне, как решить.

Заранее большое спасибо:)

1 Ответ

1 голос
/ 24 марта 2020

Вы меняете значение индексной переменной "i" внутри вашего l oop, это плохая практика программирования.

Похоже, вы пытаетесь создать последовательность чисел на основе файла2. rep() может выполнить это в одну строку.

index<-c(1:5)
repeats <-c(2, 1, 3, 2, 4)
rep(index, times=repeats)
#[1] 1 1 2 3 3 3 4 4 5 5 5 5
...