gpt4 book ai didi

python - 如何从 couchdb 查询文档并将它们加载到 pandas dataframe 中?

转载 作者:太空狗 更新时间:2023-10-30 01:26:00 36 4
gpt4 key购买 nike

我已经在本地 couchdb 服务器上下载了 Twitter 数据。并保存为 json 文件。

我用这段代码在python中进入数据库。第一次导入库

import couchdb
import pandas as pd
from couchdbkit import Server
import json
import cloudant

接下来连接服务器,选择我要进入的数据库。

dbname = couchdb.Server('http://localhost:5984')
db = dbname['Test']
server = couchdb.Server('http://localhost:5984')

我可以使用 python 创建和删除数据库,但是我不知道如何将数据从服务器放入 jupyter notebook。我想通过转发获取文本和时间来分析它。我只能看到来自 python 的一个 JSON 文件。

如果可能的话,我想将数据库中的所有 JSON 数据添加到 python 中的 pandas 数据框中,这样我也可以在 R 中对其进行分析。

问题是:如何查询文档并将它们加载到 pandas dataframe 中?

最佳答案

CouchDB 数据库中的所有文档都可以从/{db}/_all_docs 中提取具有 include_docs 查询属性的端点。响应是一个 json 对象,其中所有文档都列在 rows 字段中。

您可以使用 requests 包直接使用 CouchDB,然后使用 pandas.read_json 将响应加载到 pandas 中,或者使用 couchdb 包在内部将 json 转换为 python 对象,然后直接加载响应,即执行如下操作:

import couchdb
import pandas as pd

couch = couchdb.Server('http://localhost:5984')
db = couch['Test']
rows = db.view('_all_docs', include_docs=True)
data = [row['doc'] for row in rows]
df = pd.DataFrame(data)

请注意,将完整的数据库读入内存可能会消耗大量资源,因此您可能需要查看 _all_docs< 的 skiplimit 查询参数 以小批量读取信息的端点。

关于python - 如何从 couchdb 查询文档并将它们加载到 pandas dataframe 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46996356/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com