通过指示另一列的特定行值,提取行值并将它们组合在另一个df上

时间:2017-07-13 13:23:17

标签: r dataframe extract

我有一个像这样的data.frame

data.frame(
  V = c(1.1, 1.2, 2.1, 3.4),
  Val = c("l", "m", "s", "z"),
  stringsAsFactors = FALSE
)

 #  V  Val
 # 1.1  l
 # 1.2  m
 # 2.1  s
 # 3.4  z

我想获取val列中包含的文本,选择我想要的V值。

例如,我选择1.1和1.2

我想要这样的输出:

 Val
 l m

我该怎么办?

感谢您的建议!

1 个答案:

答案 0 :(得分:0)

要检查一列中的多个值并在另一列中获取相应的值,我们可以使用%in%,然后我们可以paste将值转换为单个字符串

newdat <- data.frame(Val= paste(df1$Val[df1$V %in% c(1.1, 1.2)], 
                    collapse=' '), stringsAsFactors = FALSE)