过滤数据集时出错

时间:2018-06-11 10:23:08

标签: r filter

我想过滤几个标准的数据集,然后计算分位数的带宽。

为此,我使用以下代码: npci()是一个自编写的函数,但这个函数肯定是有用的。

func twitterRequest(query string, token string) map[string]interface{} {
    req, err := http.NewRequest("GET", query, nil)
    if err != nil {
        log.Fatal(err.Error())
    }
    req.Header.Add("Authorization", fmt.Sprintf("Bearer %s", token))
    client := &http.Client{}
    resp, err2 := client.Do(req)
    if err2 != nil {
        log.Fatal(err.Error())
    }
    defer resp.Body.Close()
    respBody, _ := ioutil.ReadAll(resp.Body)
    var jsonResp interface{} // turns into map[string]interface{}
    err = json.Unmarshal(respBody, &jsonResp)
    if err != nil {
        log.Fatal("wrong")
    }
    return jsonResp.(map[string]interface{})
}

func searchTweets(queries string, token string) {
    builder := strings.Builder{}
    builder.WriteString(tweetSearchUrl)
    builder.WriteString("q=")
    builder.WriteString(queries)
    queryUrl := url.QueryEscape(builder.String())
    map1 := twitterRequest(queryUrl, token)
    fmt.Println(map1) // SEG FAULT HERE
}

在我的数据集上运行此函数我得到一个结果(似乎有效),但也是一个错误:

bdb_1AVQ1 <- as.list(NULL)  #bandbreite2SV Quantil 1
foreach(i = laender_bereinigt) %do% {
  foreach(j = vergleichsgruppe_bereinigt) %do% {
    foreach (k =  unabhängigkeit_bereinigt) %do% {
      foreach(l =  aktivität_bereinigt) %do% { 
        foreach (m =  nace) %do% {

          bdb_1AVQ1[[i]][[j]][[k]][[l]][[m]] <- npci(bandbreite1AV[[i]][[j]][[k]][[l][[m]]$Q1,p=0.25,alpha=0.95)

        }
      }
    }
  }
}

现在我想在序列(0.25,0.5,0.75)和$ Q(这表示我用来计算分位数的类型(1-9))中迭代p进行计算:

Error in { : 
  task 1 failed - "task 1 failed - "task 1 failed - "task 1 failed - "task 4 failed - "missing value where TRUE/FALSE needed"""""
In addition: There were 50 or more warnings (use warnings() to see the first 50)

此功能再次导致上述相同的错误。 我也得到一个输出,但列表有不同的长度,所以在最后一个循环中出现了问题。

此外,我想迭代Q - 表示我想用于分位数的计算类型:

p=c(0.25,0.5,0.75)
bdb_1SVQ1p <- as.list(NULL)  #bandbreite2SV Quantil 1

 foreach(i = laender_bereinigt) %do% {
  foreach(j = vergleichsgruppe_bereinigt) %do% {
    foreach (k =  unabhängigkeit_bereinigt) %do% {
      foreach(l =  aktivität_bereinigt) %do% { 
        foreach (m =  nace) %do% {
          for (h in 1:length(p))  {
          bdb_1SVQ1p[[i]][[j]][[k]][[l]][[m]][[h]] <- npci(bandbreite1SV[[i]][[j]][[k]][[l]][[m]]$Q1,p=p[h],alpha=0.95) 
          }
        }
      }
    }
  }
 }

导致:

 p=c(0.25,0.5,0.75)
 Q = c("Q1","Q2","Q3","Q4","Q5","Q6","Q7","Q8","Q9")
 bdb_1SVQ1pq <- as.list(NULL)  #bandbreite2SV Quantil 1

 foreach(i = laender_bereinigt) %do% {
   foreach(j = vergleichsgruppe_bereinigt) %do% {
     foreach (k =  unabhängigkeit_bereinigt) %do% {
       foreach(l =  aktivität_bereinigt) %do% { 
         foreach (m =  nace) %do% {
           for (h in 1:length(p)) {
             foreach (j = Q)%do%{
             bdb_1SVQ1p[[i]][[j]][[k]][[l]][[m]][[h]][[j]] <- npci(bandbreite1SV[[i]][[j]][[k]][[l]][[m]]$j,p=p[h],alpha=0.95) 
             }
          }
        }
      }
    }
  } 
}

所以我的问题是:

  • 我怎样才能获得有效的输出,但也有错误输出。
  • 为什么在添加新的forloop后,相同(相当简单的结构)不再起作用。

0 个答案:

没有答案