rgeolocate 错误 - 每个 IP 地址的国家/地区
rgeolocate error - country for each IP address
我无法让 rgeolocate 正常工作。我需要能够确定 IP 地址是否在澳大利亚。
我在 csv 中有一个 IP 地址列表。但是我在下面提供了示例代码并收到以下错误:
Error in maxmind_(ips, normalizePath(path.expand(file)), fields) :
Not compatible with STRSXP: [type=list].
我已经用谷歌搜索并搜索了解决方案,但迄今为止我没有找到任何有效的方法,如果有人知道解决方案,我将不胜感激。
rgeolocate 包已成功下载,GeoLite2-Country.mmdb 似乎位于 extdata 文件夹中应有的位置。
library(rgeolocate)
ip_lst <-
data.frame(
"ip_lst" = c(
"27.33.27.39",
"203.219.204.84",
"203.5.106.68",
"180.150.74.11",
"193.116.238.48",
"1.157.7.35",
"61.69.150.57",
"155.143.204.211"
)
)
file <- system.file("extdata","GeoLite2-Country.mmdb", package = "rgeolocate")
results <- maxmind(ip_lst, file, c("continent_name", "country_code", "country_name"))
results
我尝试了多个版本的 Maxmind 代码均未成功。提前感谢您的帮助。
您创建了一个名为 ip_lst 的数据框,其中包含一个名为 ip_lst
的变量,这没有错,但可能会造成混淆。这里的问题是 maxind
函数需要字符 vector,但您提供的是数据框。所以以下应该有效:
maxmind(ip_lst$ip_lst, file, c("continent_name", "country_code", "country_name"))
continent_name country_code country_name
1 Oceania AU Australia
2 Oceania AU Australia
3 Oceania AU Australia
4 Oceania AU Australia
5 Europe GB United Kingdom # <-- Not an Aussie 8(
6 Oceania AU Australia
7 Oceania AU Australia
8 Oceania AU Australia
我无法让 rgeolocate 正常工作。我需要能够确定 IP 地址是否在澳大利亚。
我在 csv 中有一个 IP 地址列表。但是我在下面提供了示例代码并收到以下错误:
Error in maxmind_(ips, normalizePath(path.expand(file)), fields) :
Not compatible with STRSXP: [type=list].
我已经用谷歌搜索并搜索了解决方案,但迄今为止我没有找到任何有效的方法,如果有人知道解决方案,我将不胜感激。
rgeolocate 包已成功下载,GeoLite2-Country.mmdb 似乎位于 extdata 文件夹中应有的位置。
library(rgeolocate)
ip_lst <-
data.frame(
"ip_lst" = c(
"27.33.27.39",
"203.219.204.84",
"203.5.106.68",
"180.150.74.11",
"193.116.238.48",
"1.157.7.35",
"61.69.150.57",
"155.143.204.211"
)
)
file <- system.file("extdata","GeoLite2-Country.mmdb", package = "rgeolocate")
results <- maxmind(ip_lst, file, c("continent_name", "country_code", "country_name"))
results
我尝试了多个版本的 Maxmind 代码均未成功。提前感谢您的帮助。
您创建了一个名为 ip_lst 的数据框,其中包含一个名为 ip_lst
的变量,这没有错,但可能会造成混淆。这里的问题是 maxind
函数需要字符 vector,但您提供的是数据框。所以以下应该有效:
maxmind(ip_lst$ip_lst, file, c("continent_name", "country_code", "country_name"))
continent_name country_code country_name
1 Oceania AU Australia
2 Oceania AU Australia
3 Oceania AU Australia
4 Oceania AU Australia
5 Europe GB United Kingdom # <-- Not an Aussie 8(
6 Oceania AU Australia
7 Oceania AU Australia
8 Oceania AU Australia