Tat*_*shi 5 python csv json couchdb nosql
我已将Twitter数据下载到本地beddbdb服务器上。并保存为json文件。
我使用此代码在python中输入数据库。第一导入库
import couchdb
import pandas as pd
from couchdbkit import Server
import json
import cloudant
Run Code Online (Sandbox Code Playgroud)
接下来连接到服务器并选择我要输入的数据库。
dbname = couchdb.Server('http://localhost:5984')
db = dbname['Test']
server = couchdb.Server('http://localhost:5984')
Run Code Online (Sandbox Code Playgroud)
我可以使用python创建和删除数据库,但我不知道如何将服务器中的数据放入jupyter笔记本。我想通过转发获得文本和时间以进行分析。我只能从python看到一个JSON文件。
如果可能的话,我想将db中的所有JSON数据添加到python中的pandas数据帧中,以便我也可以在R中对其进行分析。
问题是:如何查询文档并将其加载到熊猫数据框?
小智 5
CouchDB 数据库中的所有文档都可以/{db}/_all_docs
通过查询属性从端点提取include_docs
。响应是一个 json 对象,其中rows
字段中列出了所有文档。
您可以使用requests
package 直接使用 CouchDB,然后将响应加载到 pandas 中,pandas.read_json
或者使用couchdb
package 在内部将 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)
Run Code Online (Sandbox Code Playgroud)
请注意,将完整的数据库读入内存可能会消耗资源,因此您可能需要查看skip
和查询端点limit
的参数以小批量读取信息。_all_docs
归档时间: |
|
查看次数: |
1450 次 |
最近记录: |