相关疑难解决方法(0)

根据查找表替换数据框中的值

我在替换数据帧中的值时遇到了一些麻烦.我想基于单独的表替换值.以下是我想要做的一个例子.

我有一张桌子,每排都是顾客,每列都是他们购买的动物.让我们调用这个数据帧table.

> table
#       P1     P2     P3
# 1    cat lizard parrot
# 2 lizard parrot    cat
# 3 parrot    cat lizard
Run Code Online (Sandbox Code Playgroud)

我还有一个我将引用的表格lookUp.

> lookUp
#      pet   class
# 1    cat  mammal
# 2 lizard reptile
# 3 parrot    bird
Run Code Online (Sandbox Code Playgroud)

我想要做的就是创建一个名为新表new与功能替换所有值tableclasslookUp.我自己尝试使用一个lapply函数,但是我收到了以下警告.

new <- as.data.frame(lapply(table, function(x) {
  gsub('.*', lookUp[match(x, lookUp$pet) ,2], x)}), stringsAsFactors = FALSE)

Warning messages:
1: In gsub(".*", lookUp[match(x, lookUp$pet), 2], x) :
  argument …
Run Code Online (Sandbox Code Playgroud)

lookup r dataframe

36
推荐指数
4
解决办法
4万
查看次数

R中的条件合并/替换

我有两个数据框:

df1
x1  x2
1   a
2   b
3   c
4   d
Run Code Online (Sandbox Code Playgroud)

df2
x1  x2
2   zz
3   qq
Run Code Online (Sandbox Code Playgroud)

我想根据df1 $ x1和df2 $ x2之间的条件匹配,用df2 $ x2中的值替换df1 $ x2中的某些值,以产生:

df1
x1  x2
1   a
2   zz
3   qq
4   d
Run Code Online (Sandbox Code Playgroud)

r match r-faq

23
推荐指数
4
解决办法
2万
查看次数

标签 统计

r ×2

dataframe ×1

lookup ×1

match ×1

r-faq ×1