在数据框中查找向量之间的最接近值,可以使用apply()
函数。下面是一个示例代码:
# 创建一个数据框
df <- data.frame(A = c(1, 2, 3, 4),
B = c(5, 6, 7, 8),
C = c(9, 10, 11, 12))
# 创建一个要查找的向量
vec <- c(2.3, 7.6, 10.2)
# 定义一个函数,用于在每一行中查找最接近的值
find_closest_value <- function(row, vec) {
closest_value <- vec[which.min(abs(row - vec))]
return(closest_value)
}
# 使用apply()函数在数据框的每一行中应用函数
closest_values <- apply(df, 1, find_closest_value, vec)
# 打印结果
print(closest_values)
这个示例代码中,首先创建了一个包含3列的数据框df
,然后创建了一个要查找的向量vec
。接下来,定义了一个find_closest_value()
函数,用于在每一行中查找最接近的值。然后,使用apply()
函数在数据框的每一行中应用这个函数,并将结果存储在closest_values
向量中。最后,打印了最接近的值。
请注意,这个示例中的函数find_closest_value()
只会找到每行中最接近的一个值。如果要找到每行中多个最接近的值,可以对函数进行修改。
下一篇:按组在SQL SERVER中排名