R使用条件从多列中选择某些值

R使用条件从多列中选择某些值,r,R,我想使用条件从多列中选择某些值。还可以将行1指定为ID1。。。行5作为ID5 column1 <- c("rice 2", "apple 4", "melon 6", "blueberry 4", "orange 6") column2 <- c("rice 8", "blueberry 8", "grape 10", "water 10", "mango 3") column3 <- c("rice 6", "apple 8", "blueberry 12", "pineap

我想使用条件从多列中选择某些值。还可以将行1指定为ID1。。。行5作为ID5

column1 <- c("rice 2", "apple 4", "melon 6", "blueberry 4", "orange 6")
column2 <- c("rice 8", "blueberry 8", "grape 10", "water 10", "mango 3")
column3 <- c("rice 6", "apple 8", "blueberry 12", "pineapple 8", "mango 3")

如果我正确理解了这个问题,那么其中一种方法就是

图书馆弹琴 科尔斯% 变异系数5=选择,一个成本%>% 行%>% mutate_allfunsstrsplit.,split=[[1]][1]='rice'和as.numericstrsplit.,split=[[1]][2]>5%>% 行总和%>% mutateblueberry\u gt\u 7=选择,一杯可乐%>% 行%>% mutate_allfunsstrsplit.,split=[[1]][1]='blueberry',as.numericstrsplit.,split=[[1]][2]>7%>% 行总和%>% mutateRange\u gt\u 5=选择,一个字符%>% 行%>% mutate_allfunsstrsplit.,split=[[1]][1]='orange'&as.numericstrsplit.,split=[[1]][2]>5%>% 行和 至少满足一个条件的ID,即大米>5或蓝莓>7或橙色>5 df1$ID[whichdf1%>%selectrice\u gt\u 5、blueberry\u gt\u 7、orange\u gt\u 5%>%rowSums>0] [1] 1 2 3 5 每个ID满足多少条件 df1%>% 变异条件=Rowsums选择,一份大米5份,一份蓝莓7份,一份橙色5%>% selectID,无第二次遇到 身份证号码第二次见面 1 1 2 2 2 1 3 3 1 4 4 0 5 5 1 样本数据:


列的长度不相同?关于条件也不清楚撇开第3列没有5个值的问题不谈,我认为您需要先重新排列数据。尝试使用诸如rice 2 group value之类的值不允许进行简单的比较。如果可以的话,我会尝试将数字拆分成一个单独的列。Hi@akrun所有列的长度都相同。基本上,我希望通过ID提取列中符合条件的数据。我为我的错误道歉。所有列都具有相同的属性length@thelatemail我把这些值分成两列怎么样。column1具有所有名称,column2具有所有值。请帮帮我。感谢百万请阅读-总结是,这不是一个理想的方式来解决志愿者,可能会适得其反获得答案。请不要将此添加到您的问题中。@Charles如果这有助于您解决问题,那么您可能应该这样做,这样问题就可以被认为是“对不起”。让我试试这个解决方案,让你知道不确定发生了什么我在mutate_impl.data,dots中得到了这个消息错误:求值错误:求值错误:非字符参数..你能分享dputheadf吗?
ID#1 -> 2 conditions met
ID#2 -> 1 conditions met
ID#3 -> 1 conditions met
ID#4 -> 0 conditions met
ID#5 -> 1 conditions met
df <- structure(list(ID = 1:5, column1 = structure(c(5L, 1L, 3L, 2L, 
4L), .Label = c("apple 4", "blueberry 4", "melon 6", "orange 6", 
"rice 2"), class = "factor"), column2 = structure(c(4L, 1L, 2L, 
5L, 3L), .Label = c("blueberry 8", "grape 10", "mango 3", "rice 8", 
"water 10"), class = "factor"), column3 = structure(c(5L, 1L, 
2L, 4L, 3L), .Label = c("apple 8", "blueberry 12", "mango 3", 
"pineapple 8", "rice 6"), class = "factor")), .Names = c("ID", 
"column1", "column2", "column3"), row.names = c(NA, -5L), class = "data.frame")