首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >gtrendsR geo MSA/区域代码

gtrendsR geo MSA/区域代码
EN

Stack Overflow用户
提问于 2018-05-13 17:25:42
回答 1查看 2.4K关注 0票数 6

我正在收集谷歌趋势数据使用R软件包gtrendsR。我试图为每个大都市统计区(MAS)提取数据,但区号也会很好。到目前为止,我只获得了州一级的数据。这是密码。

代码语言:javascript
复制
example <- gtrends("car", geo="US-FL")$interest_over_time 

我为特派任务生活津贴尝试了以下几点:

代码语言:javascript
复制
example2 <- gtrends("car", geo="US-FL-Jacksonville FL")$interest_over_time 

至于区号:

代码语言:javascript
复制
example3 <- gtrends("car", geo="US-FL-904")$interest_over_time 

我收到错误,说包不能检索有效的代码。在与该方案相关的数据(“国家”)中,代码仅适用于州一级--例如佛罗里达州的美国-FL。

我想知道如何使用这个包检索更细粒度的数据,如上面example2和example3所描述的那样。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-13 19:10:09

要检索"Jacksonville,FL“的数据,您应该使用geo = "US-FL-561"

代码语言:javascript
复制
example2 <- gtrends("car", geo = "US-FL-561")$interest_over_time

要查找城市的地理代码,可以使用此代码(您可以用任何您想要的国家代码替换"US-FL" ):

代码语言:javascript
复制
data("countries")
codes <- unique(countries$sub_code[substr(countries$sub_code, 1,5) == "US-FL"])
codes

#[1] US-FL     US-FL-571 US-FL-592 US-FL-561 US-FL-528 US-FL-534 US-FL-656 US-FL-539 US-FL-548 US-FL-530

countries[countries$sub_code %in% codes[2:length(codes)],]

#       country_code  sub_code                                name
#122665           US US-FL-571                Ft. Myers-Naples, FL
#122666           US US-FL-592                     Gainesville, FL
#122667           US US-FL-561                    Jacksonville, FL
#122668           US US-FL-528            Miami-Ft. Lauderdale, FL
#122670           US US-FL-534 Orlando-Daytona Beach-Melbourne, FL
#122671           US US-FL-656                     Panama City, FL
#122672           US US-FL-539  Tampa-St Petersburg (Sarasota), FL
#122673           US US-FL-548      West Palm Beach-Ft. Pierce, FL
#122680           US US-FL-530     Tallahassee, FL-Thomasville, GA

函数

如果更容易,也可以将代码编写为一个函数:

代码语言:javascript
复制
city_code <- function(geo){
  codes <- unique(countries$sub_code[substr(countries$sub_code, 1,5) == geo])
  if(length(codes) > 1){
    countries[countries$sub_code %in% codes[2:length(codes)], 2:3]
  } else{
    message('No city code for this geo')
  }
}

示例

代码语言:javascript
复制
city_code("US-AL")

#        sub_code                                        name
#122636 US-AL-630                              Birmingham, AL
#122637 US-AL-606                                  Dothan, AL
#122638 US-AL-691           Huntsville-Decatur (Florence), AL
#122639 US-AL-698                      Montgomery (Selma), AL
#122669 US-AL-686 Mobile, AL-Pensacola (Ft. Walton Beach), FL

city_code("US-CA")

#        sub_code                                          name
#122649 US-CA-800                               Bakersfield, CA
#122650 US-CA-868                             Chico-Redding, CA
#122651 US-CA-802                                    Eureka, CA
#122652 US-CA-866                            Fresno-Visalia, CA
#122653 US-CA-803                               Los Angeles, CA
#122654 US-CA-828                          Monterey-Salinas, CA
#122655 US-CA-804                              Palm Springs, CA
#122656 US-CA-862               Sacramento-Stockton-Modesto, CA
#122657 US-CA-825                                 San Diego, CA
#122658 US-CA-807            San Francisco-Oakland-San Jose, CA
#122659 US-CA-855 Santa Barbara-Santa Maria-San Luis Obispo, CA
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50318748

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档