tw_get_property {tidywikidatar} | R Documentation |
Get Wikidata property of one or more items as a tidy data frame
Description
Get Wikidata property of one or more items as a tidy data frame
Usage
tw_get_property(
id,
p,
language = tidywikidatar::tw_get_language(),
id_df = NULL,
cache = NULL,
overwrite_cache = FALSE,
cache_connection = NULL,
disconnect_db = TRUE,
wait = 0
)
Arguments
id |
A character vector, must start with Q, e.g. "Q254" for Wolfgang Amadeus Mozart. |
p |
A character vector, a property. Must always start with the capital letter "P", e.g. "P31" for "instance of". |
language |
Defaults to language set with |
id_df |
Default to NULL. If given, it should be a dataframe typically generated with |
cache |
Defaults to NULL. If given, it should be given either TRUE or FALSE. Typically set with |
overwrite_cache |
Logical, defaults to FALSE. If TRUE, it overwrites the table in the local sqlite database. Useful if the original Wikidata object has been updated. |
cache_connection |
Defaults to NULL. If NULL, and caching is enabled, |
disconnect_db |
Defaults to TRUE. If FALSE, leaves the connection to cache open. |
wait |
In seconds, defaults to 0. Time to wait between queries to Wikidata. If data are cached locally, wait time is not applied. If you are running many queries systematically you may want to add some waiting time between queries. |
Value
A tibble, corresponding to the value for the given property. A tibble of zero rows if no relevant property found.
Examples
# Who were the doctoral advisors - P184 - of Margaret Mead - Q180099?
advisors <- tw_get_property(id = "Q180099", p = "P184")
advisors
# tw_get_label(advisors)
# It is also possible to get one property for many id
if (interactive()) {
tw_get_property(
id = c(
"Q180099",
"Q228822"
),
p = "P31"
)
# Or many properties for a single id
tw_get_property(
id = "Q180099",
p = c("P21", "P31")
)
}