热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Firebase数据库数据到R

如何解决《Firebase数据库数据到R》经验,为你挑选了1个好方法。

我在谷歌有一个Firebase拥有流传感器数据的数据库.我有一个Shiny应用程序需要读取此数据并映射传感器及其值.

我试图从Firebase中提取数据R,但找不到任何执行此操作的程序包.该应用目前正在本地下载的数据上运行.

我找到了FireData包裹,但不知道它是如何工作的.

我知道你可以从Firebase中提取数据Python,但我不知道足够的Python这样做,但我愿意在rPython必要的时候在R中编写代码.

我有: - Firebase项目链接 - 用户名 - 密码

有没有人过去尝试过Firebase和R/Shiny?

我希望我的问题很清楚.



1> FvD..:

R包fireData的入门基础如下。首先,您需要确保已在GCP(Google云平台)上设置了Firebase帐户。一旦建立了一个新项目并命名

现在,您已经有了一个项目,请在概述页面上选择“将Firebase添加到您的Web应用程序”选项。它将为您提供所需的所有凭据信息。

[

处理R中此类信息的一种方法是将其添加到.Renviron文件中,这样您就无需与代码共享(例如,如果它转到github)。在Efficient R Programming Book中有关于如何管理.Renviron文件的很好的描述。

API_KEY=AIzaSyBxxxxxxxxxxxxxxxxxxxLwX1sCBsFA
AUTH_DOMAIN=stackoverflow-1c4d6.firebaseapp.com
DATABASE_URL=https://stackoverflow-1c4d6.firebaseio.com
PROJECT_ID=stackoverflow-1c4d6

重新启动R后(如果进行了任何更改),这将对R会话可用。

因此,现在您可以尝试一下。但首先,请更改您的Firebase数据库的规则,以允许任何人进行更改和阅读(以使这些示例正常工作)

现在您可以运行以下示例

library(fireData)
api_key <- Sys.getenv("API_KEY")
db_url <- Sys.getenv("DATABASE_URL")
project_id <- Sys.getenv("PROJECT_ID")
project_domain <- Sys.getenv("AUTH_DOMAIN")

upload(x = mtcars, projectURL = db_url, directory = "new")

上载功能将返回其保存的文档的名称,然后您可以使用该名称进行下载。

> upload(x = mtcars, projectURL = db_url, directory = "main")
[1] "main/-L3ObwzQltt8IKjBVgpm"   

您上载的数据框(或值向量)将立即在该名称下的Firebase数据库控制台中可用,因此您可以验证一切是否按预期进行。

现在,例如,如果返回的名称已读取,main/-L3ObwzQltt8IKjBVgpm则可以按以下方式下载它。

download(projectURL = db_url, fileName = "main/-L3ObwzQltt8IKjBVgpm")

创建用户后,您可以要求身份验证。例如,您可以像这样创建用户(这些用户出现在您的Firebase控制台中)。

createUser(projectAPI = api_key, email = "test@email.com", password = "test123")

然后,您可以获得他们的用户信息和令牌。

registered_user <- auth(api_key, email = "test@email.com", password = "test123")

然后使用返回的tokenID访问文件。

download(projectURL = db_url, fileName = "main/-L3ObwzQltt8IKjBVgpm", 
           secretKey = api_key, 
           token = registered_user$idToken)


推荐阅读
author-avatar
nissunshine
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有