2017-03-09 5 views
0

の値を更新すると、ここに私のデータフレームの抜粋です:R:データフレームの列

x   y  se 
    4   a  7.146329 
15   a  8.458633 
17   a  9.286849 
11   b  6.700024 
    8   b  4.697962 
12   c  7.884244 
10   c  7.834816 
17   c  7.762385 
12   d  5.910785 
15   d  12.98158 

各番号が1減算されるように、私は、最初の列を更新する必要があるが、唯一の条件aについておよびb。つまり、c(4, 15, 17, 11, 8, 12, 10, 17, 12, 15)の代わりに、私はc(3, 14, 16, 10, 7, 12, 10, 17, 12, 15)を得るでしょう。

私はさまざまな方法を試しましたが、何も機能しませんでしたが、確かにここで信じられないほど簡単なものがありません!

+2

'のDF HubertL

+0

完璧、ありがとうございます! –

答えて

0

ここでifelseを使用できます。データフレームがdf1命名されると仮定すると:

df1$x <- ifelse(df1$y %in% c("a", "b"), df1$x - 1, df1$x) 
関連する問題