python - 熊猫数据框多个数据库表
问题描述
我有一个从特定产品中提取数据的 API 包装器。我正面临如何将 json 数据映射到数据库(postgresql)的问题。我已经阅读了 Pandas 数据框,但我不确定这是否是正确的方法。我有几个问题需要帮助。
1)是否可以选择哪些行进入数据框?
2)数据框中的每一行都需要插入到两个不同的数据库表中。我需要在 TableA 中插入十列获取新插入行的 id,并将包括返回的 id 在内的五列插入到 TableB 中。我该怎么办?
3)是否可以为数据框中的每一列指定数据类型?
4) 是否可以将列名重命名为数据库字段名?
5)是否可以遍历特定列并替换某些数据?
我可以搜索到我想要完成的任务的特定术语吗?
非常感谢!
解决方案
1) 是的,你可以。你可以按照这个教程
2)您可以按照与以前相同的教程实现此目的。
3) 在 pandas 中转换数据类型有 3 个主要选项:
3.1) to_numeric () - 提供安全地将非数字类型(例如字符串)转换为合适的数字类型的功能。(另见 to_datetime() 和 to_timedelta()。)
3.2) astype () - 将(几乎)任何类型转换为(几乎)任何其他类型(即使这样做不一定明智)。还允许您转换为分类类型(非常有用)。
3.3) infer_objects () - 如果可能的话,一种实用方法,用于将保存 Python 对象的对象列转换为 pandas 类型。
4)您可以简单地调用 .rename 函数,如此处所述
5) 至少有 5 种方法可以迭代 pandas 中的数据。有些比其他更快,但理想的方法取决于每种情况。GeeksForGeeks上有一篇关于它的非常好的帖子。
我希望我能以某种方式帮助你=)
推荐阅读
- php - 将 mysql 语句存储到我可以传递给 html 表单的变量中
- java - 如何使用 CURL 将多格式文件和 JSON 发布到 Springboot Restful Webservice
- javascript - 使用节点和动态生成的 HTML 修改 HTML 文件
- database - 如何将 CSV 文件导入 DolphinDB?
- python - 打开和关闭 Firefox 浏览器的两个实例
- javascript - Node.js - 无法使用 $(this) 从 jquery 访问把手元素
- java - 为什么这个while循环与“and”运算符一起使用而不与“or”一起使用?
- keras - DepthwiseConv2D 和 SeparableConv2D 的区别
- c++11 - 无状态 Lambda 和私有成员
- node.js - 执行 http.get 的 Promise 返回“待处理”