İnsanların yaşları olan bir dosyam var ve yaş aralıkları (örneğin, en az 10, 35-44 vb.) Alt gruplarını ayırmak istiyorum.Regex in R - tamsayı dizgisinden (100 adede kadar) yalnızca tek tamsayılar (10'dan az) döndürüyor
çift haneli sayılar yaş aralıkları ikenince grep kullanarak çalışıyor:
X_35_44 <- X[ grep("35|36|37|38|39|40|41|42|43|44", X$Age) , ]
10 ör altında herhangi bir şey için subsetine çalışıyor: İçinde 1 ile herhangi bir yaş geri am
X_10under <- X[ grep("0|1|2|3|4|5|6|7|8|9|10|", X$Age) , ]
(örn. 31) ya da 10'un altındaki sayılardan ziyade 2 ya da 3'dür.
Bunun gerçekleşmediğinden nasıl emin olabilirim?
Herhangi bir yardım çok takdir edilecektir! Başarısız kodumu kabul ziyade ben regex stratejisi ile katılmıyorum gidip yerine cut
veya findInterval
kullanmanızı öneririz ediyorum daha etkili kodlama çözümü yayınlamıyor prensibi kullanarak peşin
daha kolay olmaz mıydı dönüştürmek için 'X $ Yaş <- as.integer (X $ Age) 've' X_10under <- alt kümesini (X, Yaş <= 10) 'kullanın? – rhole
[böylece bir problemi çözmek için regex kullandınız ve şimdi başka bir probleminiz var mı?] (Https://xkcd.com/1171/) – rawr
Eğer regex kullanmanız gerekiyorsa, önce ve sonra gelenleri belirtmeniz gerekir. bir basamak değil: 'paste0 ('\\ D', 1:10, '\\ D', daraltma = '|')' – alistaire