gpt4 book ai didi

r - 将函数应用于具有更改参数的数据框

转载 作者:行者123 更新时间:2023-12-04 10:35:19 25 4
gpt4 key购买 nike

我有两个对象:

具有 3 个变量的数据框:

v1 <- 1:10
v2 <- 11:20
v3 <- 21:30
df <- data.frame(v1,v2,v3)

具有 3 个元素的数字向量:
nv <- c(6,11,28)

我想将第一个变量与第一个数字进行比较,将第二个变量与第二个数字进行比较,依此类推。
which(df$v1 > nv[1])
which(df$v2 > nv[2])
which(df$v3 > nv[3])

当然,实际上我的数据框有更多的变量,因此手动输入每个变量不是一种选择。

我经常遇到这类问题。我需要阅读什么样的文件才能熟练掌握这些问题?

最佳答案

一种选择是与相同大小的元素进行比较。为此,我们可以通过 'df' ( rep(nv, each=nrow(df)) ) 的行数复制 'nv' 中的每个元素,并与 df 进行比较。或使用 col执行与 rep 类似的输出的函数.

 which(df > nv[col(df)], arr.ind=TRUE)

如果您需要一个逻辑矩阵,对应于每一列与 'nv' 的每个元素的比较
 sweep(df, 2, nv, FUN='>')

关于r - 将函数应用于具有更改参数的数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30652729/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com