2017-02-13 7 views
0

に1つのデータフレームからファクタ値を適用する:は条件付きで私は、次の2つのデータフレームを持っている別の

letters <- LETTERS[seq(from = 1, to = 5)] 
values <- rnorm(5, mean = 50) 
df1 <- data.frame(letters, values) 

category <- sample(LETTERS[1:5], 20, replace = TRUE) 
numbers <- rnorm(20, mean = 100) 
df2 <- data.frame(category, numbers) 

私はベースdf2$numbersの値をとり、df1$valuesで値を減算df2で新しい列を作成したいです一致する文字。すなわち

df1で「C」の値が49.2である場合、私はdf$categoryが「C」に等しいdf2$numbers内のすべての行から49.2を減算します。希望は意味をなさない。助けてくれてありがとう! dplyr

+2

'DF2の$番号= DF2 $番号 - DF1の$値[一致(DF2の$カテゴリ、DF1の$文字)]' –

+0

は美しく働いた、ありがとうございました! – Michael

答えて

1

df <- full_join(df1, df2, by = c('letters' = 'category')) %>% 
    mutate(diff = numbers - values) 
+0

素晴らしい、ありがとう! – Michael

関連する問題