J'ai une trame de données dont l'adresse est l'une des colonnes, l'adresse peut parfois contenir du code ZIP/PIN et parfois non.Extraction de code postal à partir de la ligne d'adresse
Cadre des données:
BANK ADDRESS
ABU DHABI COMMERCIAL BANK REHMAT MANZIL, V. N. ROAD,CURCHGATE, MUMBAI - 400020
VIJAYA BANK BOKARO CITY JHARKHAND,15/D1 HOTEL BLUE-,DIAMOND COMPLEX,BOKARO CITY,JHARKHAND,JHARKHAND
ALLAHABAD BANK DANKIN GANJ DIST. MIRZAPUR - 231 001 UTTAR PRADESH
Comment puis-je extraire uniquement le code postal/PIN avec les informations suivantes:
1. ZIP/PIN code are 6 digits (INDIAN ZIP/PIN CODE)
2. ZIP are sometimes split by 3 digits, 560 015
3. ZIP are sometimes separated by -, eg: 560-015
Ci-dessous mon code actuel:
df$zip <- stri_extract_all_regex(df$ADDRESS, "(?<!\\d)\\d{6}(?!\\d)")
Mais la le code ci-dessus ne tient pas compte des points 2 et 3 de ma logique, c'est-à-dire gérer la partition ZIP par "" ou "-"
'' stri_match_last_regex' du paquet stringi' devrait marcher. – Maju116
@ manju116 pourriez-vous me donner un exemple de la façon dont stri_match_last_regex est utilisé ici? –
'lapply (c (« REZMAT MANZIL, VN ROUTE, CURCHGATE, MUMBAI - 400020 »,« DANKIN GANJ DIST MIRZAPUR - 231 001 UTTAR PRADESH »), fonction (x) { pâte (unlist (str_extract_all (x," [0-9] ")), collapse =" ") })' –