没有项目描述

search-sampler的Python项目详细描述


搜索采样器

这是一个用于收集和分析google health api数据的包,使用一个巨大的滚动样本,这在进行精确计算时非常有用。这个包不只是从所有数据点中抽取一个样本,而是为用户提供了为每个数据点检索多个样本的选项,这些样本稍后可以作为单个数据点计算。这是研究人员用于收集皮尤研究中心2017年4月27日发表的《关于燧石水危机的报告》数据的脚本的修改版本。有关使用此工具的更多信息,请参阅本帖子

关于报告

此存储库包含一个通用版本的代码,用于收集和分析皮尤研究中心项目的谷歌健康API中的数据,"搜索新闻:燧石水危机",于2017年4月27日发布。

该项目以密歇根州弗林特市的水危机为例,探索了聚合搜索行为可以告诉我们在当今信息环境中,新闻是如何传播的,公众注意力是如何转移的。

这项研究深入探讨了最普遍的搜索方式,作为公众利益、对危机的关注和意图的代表,并跟踪搜索活动在真实世界事件及其相关新闻报道的同时起起伏伏的方式。

研究人员通过google的health api收集数据,该中心请求并获得了该项目的特殊访问权限。有关更多信息,请阅读我们关于如何使用谷歌趋势数据进行研究的中贴子。注意,这需要访问Health API;若要应用,请单击

要求

安装

通过PIP安装:

pip install search_sampler

说明

注意:使用此工具需要来自google的api密钥,并具有对health api的特殊访问权限。若要请求访问,请通过以下方式与谷歌新闻实验室联系:http://docs.google.com/forms/d/e/1faipqlsdzbybceulxwafhsmrgkq6q1afvowlauvf8kuk5w\u hotrsq2a/viewform?访问id=1-636281495024829628-2992692443&rd=1" rel="nofollow">表格

初始化

要使用此工具,请使用api键和一组搜索参数初始化类,这些参数包括搜索词、区域、搜索周期的开始和结束以及要搜索的时间单位(天、周、月)。每次搜索还需要一个名称(search_name),该名称用作输出文件的后缀。多次使用相同的搜索名称可以在调用save函数时将新结果连接到现有输出。

搜索参数应作为字典传递。例如:

apikey = ''

output_path = '' # Folder name in your current directory to save results. This will be created.

# search params
params = {
    # Can be any number of search terms, using boolean logic. See report methodology for more info.
    'search_term':['cough'],

    # Can be country, state, or DMA. States are US-CA. DMA are a 3 digit code; see Nielsen for info.
    'region':'US-DC',

    # Must be in format YYYY-MM-DD
    'period_start':'2014-01-01',
    'period_end':'2014-02-15',

    # Options are day, week, month. WARNING: This has been extensively tested with week only.
    'period_length':'week'
}

sample = SearchSampler(apikey, search_name, params, output_path=output_path)

获取数据

此软件包提供单个数据示例或一组滚动窗口示例(有关详细信息,请参见中柱

要检索单个样本:

df_results = sample.pull_data_from_api()

要检索滚动样本集:

df_results = sample.pull_rolling_window(num_samples=num_samples)

保存结果

要保存结果,请运行内置保存命令:

sample.save_file(df_results)

searchsampler还允许您多次运行同一个搜索。当在不同的日子完成时,health api返回一个稍有不同的样本,为您提供更多的观察结果并提高您的分析能力(请参见medium发布了解更多信息)。然后,通过将append参数添加到save_file,可以将这些新结果追加到以前保存的任何结果中。如果append未设置为true,则现有结果将被覆盖。

sample.save_file(df_results, append=True)

输出

结果以csv格式保存在指定输出路径/区域的文件夹中。文件名反映区域和指定的搜索名称。例如,如果输出路径为"data",区域为"us-ca",搜索名称为"flu",则该文件将在"data/us-ca/us ca flu.csv"中找到。此文件可以由Microsoft Excel等电子表格程序以及一系列统计和计算工具打开。请注意,如果在excel中打开,则可能无法识别日期字段,但这在统计或计算工具(如r或python的pandas)中不应该是问题。输出文件中的字段为:

  • 查询时间:已运行时间查询
  • 样本:此单个样本的数目。零索引。
  • 术语:搜索的术语列表
  • 时间戳:正在搜索的特定时段
  • :来自运行状况API的值

方法说明

该项目是该中心首次涉足谷歌健康应用程序接口(google health api)的项目,它既是对弗林特水危机(flint water crisis)的研究,也是对搜索数据分析如何揭示公众对新闻和事件的反应的探索。详细的方法论是公开分享我们在这个过程中学到的东西。

致谢

皮尤慈善信托公司使这份报告成为可能。皮尤研究中心(pew research center)是皮尤慈善信托基金(pew charitary trusts)的子公司,其主要出资人。本报告基于皮尤研究中心若干个人和专家的输入和分析。谷歌的数据专家在项目过程中提供了宝贵的意见,从帮助了解数据结构到就方法决定进行磋商。虽然分析是以我们与顾问的磋商为指导,但皮尤研究中心仅负责数据的解释和报告。

使用策略

除了许可证之外,用户还必须遵守以下条件:

推荐报告引文

皮尤研究中心,2017年4月,"寻找新闻:燧石水危机"

推荐的包引用

皮尤研究中心,2018年9月,"搜索采样器"网址:github.com/pew research/search嫒sampler

皮尤研究中心相关出版物

问题和拉取请求

此代码是按在您自己的项目中使用的方式提供的。您可以提交问题,并提出任何问题或建议,您可能有请求。我们将尽力在30天内作出回应。

关于皮尤研究中心

皮尤研究中心(pew research center)是一个无党派的事实库,向公众通报影响世界的问题、态度和趋势。它不采取政策立场。该中心开展民意调查、人口研究、内容分析等数据驱动的社会科学研究。它研究美国的政治和政策;新闻和媒体;互联网、科学和技术;宗教和公共生活;西班牙裔趋势;全球态度和趋势;以及美国的社会和人口趋势。该中心的所有报告可在www.pewresearch.org上查阅。皮尤研究中心是皮尤慈善信托基金的子公司,其主要出资人。

联系人

如有任何查询,请发送电子邮件至info@pewresearch.org。请务必说明您的截止日期,我们会尽快给您答复。皮尤研究中心通信人员定期监控此电子邮件帐户。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使用唯一的按钮标签单击按钮   代码生成如何使用Java codeModel为数组的特定索引赋值   java如何批量执行Camel SQL插入   java iText 7将ltv添加到现有签名   内存管理Java应用程序突然停止几天后(810)   带MySQL的java注册表单JavaFX在intellij中失败   如何使用eclipse为windows azure java项目启用远程调试   一种通用的java输入输出设计模式   java Android XML(RSS)忽略引号(“”)   java帮助:安卓中的8 X 10 2维按钮数组   java启动Android项目   JWrapper构建java应用程序   java如何在Android应用程序中设置基于日期/时间的默认页面加载?   java循环程序在完成后返回到起点   java Hibernate:更好的整体类还是多类映射?   回溯数独解算器的递归问题[Java]   java查找类用法   java如何在SpringWebFlow中将多个模型绑定到一个视图?