我有一个包含三列的数据框:参考、目标、距离。每个参考都具有到同一组目标的测量距离,我想获得每个参考的最小距离向量。现在我正在使用 for 循环执行此操作,但似乎应该有一种方法可以对其进行矢量化。
这是我的代码:
refs <- levels(data$ref)
result <- c()
for (ref in refs) {
# Find the minimum distance for observations with the current ref
# but be sure to protect against ref == target!
best_dist <- min(data[data$ref == ref & data$target != ref,]$distance)
result <- c(result, best_dist)
}
我注定要以这种方式设置我的数据框,还是有一种很好的方法来矢量化它?谢谢您的帮助!