在R

时间:2019-05-15 14:09:39

标签: r loops if-statement conditional-statements

由于我不得不为无人看管的小船重建缺少的数据,因此我创建了一张天数表(以及一天中的时间,可以是早晨/下午),我需要使用数据集来为示例船“ GONCALO”重建。我的数据表包含受监视的船只,它们的航行日期和航行次数。 因此,例如,如果要为“ GONCALO”重建“ 06-05-2018,早晨”这一天,我需要从我的数据中找出用于重建的旅行次数。在以下条件下:

  • 如果今天有空,我想获得“ FAIDOCA”的旅行次数
  • 如果“ FAIDOCA”不可用,我想今天使用“ RISSO”
  • 如果两者均不可用,我将获取当天特定时间(或如果没有时间)可用的当天任何一艘船的行程编号
  • 如果我的数据中没有用于重建这一天的样本,则应该从“ FAIDOCA”的其他任意一天随机选择一个行程编号

示例数据:

不受监控的日期:https://docs.google.com/spreadsheets/d/1ezhf3xlQeGwfFh91vmpPRLIDfutrDTwJW3oPKqE8DVU/edit?usp=sharing

样本数据: https://docs.google.com/spreadsheets/d/1gOpYPHVd1LGmxwqZYtxp9RhoASF-nI51OA5ODlhHnzw/edit?usp=sharing

这是我的代码,为简单起见,我尝试首先使用较少的条件构建循环,因此缺少一些列出的参数。但是到目前为止,它还没有给我正确的旅行次数。

out<-NA

for(i in (seq(1,NROW(goncalo)))) {

  for (j in (seq(1,NROW(data)))){

    if(goncalo$date[i]==data$date[j] & goncalo$time_of_day[i]==data$time_of_day[j] & data$name[j]=="FAIDOCA"){
              out[i] <- data$numberoftrip [j]
          }
    else{
      out[i] <-sample(data$numberoftrip)
    }
  }}

我的目的是要获得一张表,上面列出旅行的次数,旅行的日期和船的名称。因此,我知道要重建丢失的日期需要使用哪些数据(旅行次数)。我将不胜感激!

0 个答案:

没有答案