2017-10-12 7 views
2

私はdata.frame次があるとします。 変更、最後の2桁に "00"

dt=data.frame(id=LETTERS[1:5],code=c("101011,101102,101130","211011,101102", 
    "101011,301102,101132","201015,401102,103412","131011,101101,105430")) 

id     code 
A 101011,101102,101130 
B   211011,101102 
C 101011,301102,101132 
D 201015,401102,103412 
E 131011,101101,105430 
F   101100,103200` 

は、私はちょうどこのように、コードの最後の2つの数字は "00" になってきて願っています:

id     code 
A 101000,101100,101100 
B   211000,101100 
C 101000,301100,101100 
D 201000,401100,103400 
E 131000,101100,105400 
F   101100,103200` 

これどうやってするの?

答えて

3

gsub\\d{2}\\bを使用してください。 \\bが単語境界に一致する場合、\\d{2}\\bは単語境界の直前の2桁に一致します。 gsubを使用して一致をすべて00に置き換えます。

dt$code <- gsub('\\d{2}\\b', '00', dt$code) 

dt 
# id     code 
#1 A 101000,101100,101100 
#2 B  211000,101100 
#3 C 101000,301100,101100 
#4 D 201000,401100,103400 
#5 E 131000,101100,105400 
関連する問題