小编Cor*_*bjn的帖子

循环直到每个元素都返回 true

我有一个带有 id 的列表(列表)。作为使用 wget 进行在线检查的结果,该列表的每个元素都返回字符串“true”或“false”。我想遍历该列表,只要有一个元素返回“false”值。基本上我想重复这一点:

for i in range(len(list)):
  wget online check
  if status == 'true':
    write id to another list
  elif status == 'false':
    continue
  time.sleep()
Run Code Online (Sandbox Code Playgroud)

一遍又一遍,直到一切都是真的。

我用嵌套的 while 循环尝试了它:

for j in range(len(list)):
    while status_ == 'false':
        wget online check
      if status == 'true':
        write id to another list
      elif status == 'false':
        continue
      time.sleep()
Run Code Online (Sandbox Code Playgroud)

但这不起作用。有人可以帮忙吗?

干杯

python loops if-statement while-loop

2
推荐指数
1
解决办法
63
查看次数

基于特定分布按组从数据帧中采样

我正在尝试从数据框中进行采样,但条件是样本代表了我的案例中特定标准的分布。数据框的结构如下:

df <- data.frame(Locaton = c('A', 'B', 'B', 'B', 'C', 'C', ...),
                 Veg_Species = c('X', 'Y', 'Z', 'Z', 'Z', 'Z', ...),
                 Date_Diff = c(2, 5, 2, 0, 4, 4, ...))
Run Code Online (Sandbox Code Playgroud)

重要的是要知道每个的数量Veg_Species不同。这意味着X出现了 25 次,例如Y45 次和78 次。Z现在我想Veg_Species根据最小样本的分布Date_Diff不同的样本中进行采样。在这种情况下,这意味着从Date_diff分布中的每个物种中进行抽样X

我想我可以这样做dplyr

sample.species <- df %>%
  filter(Veg_Species == 'Z') %>%
  sample_n(25, replace = TRUE)
Run Code Online (Sandbox Code Playgroud)

但这显然只是从所有Veg_Species具有该名称的样本中随机采样Z

我如何也考虑分布?

有关更详细的示例,请单击此处

r sample distribution dataframe dplyr

2
推荐指数
1
解决办法
938
查看次数

基于应用函数命名 R 中的列表元素

我有一组函数funs <- c(mean, median, min, max, quantile)想要应用于数字向量values。这可以很容易地完成sapply(),但结果是没有一个元素有名称。我希望每个列表元素根据应用的函数命名。我试过:

funs <- c(mean, median, min, max, quantile)
some_vals <- c(rnorm(14))

stats <- sapply(funs, function(fun) {
    result <- fun(some_vals)
    names(result) <- deparse(substitute(fun))
    return(result)
    }
)
Run Code Online (Sandbox Code Playgroud)

但每个列表元素都被命名为 X[[i]]。如何根据应用的函数命名列表元素?

r sapply

2
推荐指数
1
解决办法
31
查看次数

标签 统计

r ×2

dataframe ×1

distribution ×1

dplyr ×1

if-statement ×1

loops ×1

python ×1

sample ×1

sapply ×1

while-loop ×1