You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用R的TwitteR包筛选美国全境的推文?

获取美国全境推文的可行方案

要覆盖整个美国全境的推文,其实可以通过以下两种思路来实现,毕竟searchTwitter()的geocode参数需要具体的经纬度+半径组合,咱们得灵活调整:

方案一:覆盖美国本土的单范围搜索

美国大陆的地理中心大概在北纬39.8283°,西经98.5795°,你可以设置一个足够大的半径来覆盖本土所有区域。经过测算,1500英里(mi)的半径基本能覆盖美国本土的绝大多数地区,对应的geocode参数写法如下:

library(twitteR)
# 假设你已经完成了OAuth认证
us_tweets <- searchTwitter(q = "", geocode = '39.8283,-98.5795,1500mi', n = 1000)

注意:这个范围没办法覆盖阿拉斯加和夏威夷,因为它们和本土距离太远,如果需要包含这两个地区,建议用方案二。

方案二:分区域搜索后合并结果

如果要完整覆盖美国所有领土(包括阿拉斯加、夏威夷),可以分三次搜索,再合并去重结果:

  1. 美国本土:用方案一的地理中心和半径
  2. 阿拉斯加:地理中心大概在北纬61.3850°,西经152.2683°,设置500英里半径
  3. 夏威夷:地理中心大概在北纬20.7984°,西经156.3319°,设置200英里半径

对应的代码示例:

# 搜索本土推文
us_mainland <- searchTwitter(q = "", geocode = '39.8283,-98.5795,1500mi', n = 1000)
# 搜索阿拉斯加推文
alaska <- searchTwitter(q = "", geocode = '61.3850,-152.2683,500mi', n = 200)
# 搜索夏威夷推文
hawaii <- searchTwitter(q = "", geocode = '20.7984,-156.3319,200mi', n = 200)

# 合并所有推文并去重(根据推文ID)
all_us_tweets <- c(us_mainland, alaska, hawaii)
unique_us_tweets <- unique(all_us_tweets)

额外注意事项

  • Twitter的API有搜索数量限制,n参数设置的数值不一定能完全返回,实际返回量取决于符合条件的推文数量和API限制。
  • 如果需要搜索特定关键词的美国推文,把q参数设置为对应的关键词即可,比如q = "climate change"。
  • 确保你已经完成了TwitteR包的OAuth认证,否则无法调用API。

内容的提问来源于stack exchange,提问作者Laura Ataraxia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:12:37