比较R中不同列的股票价格

比较R中不同列的股票价格,r,R,我很难在R中写几行代码来查看A股的最新价格,并将其与存储在不同列中的A股收盘价进行比较。理想情况下,代码将查看股票A、B、C、D、E,并根据下面提供的IF语句给出结果 现在我的代码将比较四次而不是两次。我找不到一个好方法来重写它。有什么办法吗 x<-c(2,4) y<-c(3,5) for(i in x) for(j in y){ if (c[nrow(c),i]>c[nrow(c),j]){ print("Ok") }else{ print("n

我很难在R中写几行代码来查看A股的最新价格,并将其与存储在不同列中的A股收盘价进行比较。理想情况下,代码将查看股票A、B、C、D、E,并根据下面提供的IF语句给出结果

现在我的代码将比较四次而不是两次。我找不到一个好方法来重写它。有什么办法吗

x<-c(2,4)

y<-c(3,5)


for(i in x) for(j in y){
  if (c[nrow(c),i]>c[nrow(c),j]){
    print("Ok")
  }else{
    print("no")
  }
}

尝试mapply,之前将股票的最后价格和收盘价格拆分为两个不同的数据帧:

Lista <- list("A_Last", "B_Last", "C_Last", "D_Last", "E_Last")
Lista2 <- list("A_Close", "B_Close", "C_Close", "D_Close", "E_Close")

lapply(Lista, function(x){
  assign(x, runif(10), envir = globalenv())
})

lapply(Lista2, function(x){
  assign(x, runif(10), envir = globalenv())
})

StockLast <- cbind.data.frame(A_Last, B_Last, C_Last, D_Last, E_Last)
StockClose <- cbind.data.frame(A_Close, B_Close, C_Close, D_Close, E_Close)

mapply(function(x, y) {
 if (x[[nrow(x)]] > y[[nrow(y)]]) {
   print("Ok")
 } else {
   print("no")
 }
}, x = StockLast, y = StockClose)

希望有帮助。

c是我在R中读到的两种股票的列表。以防万一有人要求澄清暗示创建一个索引并只使用一个for循环。它在x[[nrowx]]中显示错误消息如下:尝试在get1indexMy error中选择少于一个元素,nrow in not defined for atomic vectors,必须改为使用长度。我已经改变了这个例子。希望它能起作用。