The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
dialr is an R interface to Google’s libphonenumber library. It uses the java implementation of libphonenumber via rJava for all phone number processing.
For a full rundown of libphonenumber see their GitHub and javadocs.
You can install the released version of dialr from CRAN with:
install.packages("dialr")
And the development version from GitHub with:
# install.packages("devtools")
::install_github("socialresearchcentre/dialr") devtools
library(dialr)
# Parse a character phone number vector
<- c(0, 0123, "0404 753 123", "61410123817", "+12015550123")
x <- phone(x, "AU")
x
is_parsed(x) # Was the phone number successfully parsed?
#> [1] FALSE TRUE TRUE TRUE TRUE
is_valid(x) # Is the phone number valid?
#> [1] FALSE FALSE TRUE TRUE TRUE
is_possible(x) # Is the phone number possible?
#> [1] FALSE FALSE TRUE TRUE TRUE
get_region(x) # What region (ISO country code) is the phone number from?
#> [1] NA NA "AU" "AU" "US"
get_type(x) # Is the phone number a fixed line, mobile etc.
#> [1] NA "UNKNOWN" "MOBILE"
#> [4] "MOBILE" "FIXED_LINE_OR_MOBILE"
format(x)
#> [1] NA "+61123" "+61404753123" "+61410123817" "+12015550123"
format(x, home = "AU")
#> [1] NA "123" "0404753123" "0410123817"
#> [5] "001112015550123"
# Use with dplyr
library(dplyr)
<- tibble(id = 1:4,
y phone1 = c(0, 0123, "0404 753 123", "61410123817"),
phone2 = c("03 9388 1234", 1234, "+12015550123", 0),
country = c("AU", "AU", "AU", "AU"))
%>%
y mutate_at(vars(matches("^phone")), ~phone(., country)) %>%
mutate_at(vars(matches("^phone")),
list(valid = is_valid,
region = get_region,
type = get_type,
clean = format))
#> # A tibble: 4 × 12
#> id phone1 phone2 country phone1_valid phone2_valid
#> <int> <phone> <phone> <chr> <lgl> <lgl>
#> 1 1 NA +61393881234 AU FALSE TRUE
#> 2 2 +61123 +611234 AU FALSE FALSE
#> 3 3 +61404753123 +12015550123 AU TRUE TRUE
#> 4 4 +61410123817 NA AU TRUE FALSE
#> # ℹ 6 more variables: phone1_region <chr>, phone2_region <chr>,
#> # phone1_type <chr>, phone2_type <chr>, phone1_clean <chr>,
#> # phone2_clean <chr>
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.