Преобразование в lapply в R - для l oop с добавлением tibble - PullRequest
0 голосов
/ 21 июня 2020

Я пытаюсь распараллелить это для l oop, сначала преобразовав l oop в lapply.

отправлено - это тиббл с примерно 20000000 строками

Для l oop использует индекс от i до go в каждой отправленной строке. Если выполнены два условия, 31 строка (от i-15 до i + 15) нарезается и добавляется к другому тибблу (либо femaleWindow, либо maleWindow).

Есть ли у вас какие-либо советы, как преобразовать это в lapply / parallelize for l oop, чтобы сэкономить время?

for (i in seq_len(nrow(sent)))
{
    if(i>15){h=i-15} else{h=1}
    j=i+15
    cut <- slice(sent,i) 

    if (cut[1,5]=="yes")
    {
        window <- slice(sent, h:j)
        leadcut <- window %>% filter(leader=="yes")
        x = fleadcut[1,4] %>% replace_na(list(leader="none"))
        if(x =="yes")
        {
            femaleWindow <- bind_rows(femaleWindow, window)
        }  
    } else if (cut[1,5]=="no")
    {
        window <- slice(sent, h:j)
        leadcut <- window %>% filter(leader=="yes")
        x = leadcut[1,4] %>% replace_na(list(leader="none"))
        if(x =="yes")
        {
            maleWindow <- bind_rows(maleWindow, window)
        }  
    } else{print(i)}
}

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...