通过cx_Oracle将 pd.dataframe 插入数据到oracle 数据库表 多值插入

通过cx_Oracle将 pd.dataframe 插入数据到oracle 数据库表 多值插入,第1张

笔者从外部获取dataframe类型的数据,尝试各种办法,要么各种报错,要么效率很低;

参照一海外大神文章,寥寥几句,完成任务

调用也简单,适用各种dataframe 的插入

步骤 *** 作方法如下:

1、环境准备:

a、右击桌面上选择【Open in Terminal】 打开终端。

b、在d出的终端中输入【ipython】进入Python的解释器中,如图1所示。

2、导入所需要的包:

导入实验常用的python包。如图2所示。

【import pandas as pd】pandas用来做数据处理。

【import numpy as np】numpy用来做高维度矩阵运算.

【import matplotlib.pyplot as plt】matplotlib用来做数据可视化。

3、pandas数据写入到csv文件中:

【names = [‘Bob’,’Jessica’,’Mary’,’John’,’Mel’]】创建一个names列表

【 births = [968,155,77,578,973]】创建一个births 列表

【DataSet = list(zip(names,births))】用 zip 函数将这两个列表合并在一起

【DataSet】查看生成的数据

【df = pd.DataFrame(data = DataSet ,columns=[‘Names’,’Births’])】用生成的数据生成一个DataFrame对象

【df】查看生成的dataFrame

将创建的数据写入到/opt/births1880.csv文件中,

【df.to_csv(‘/opt/births1880.csv’, index=False, header=False )】将df写入到文件中

【ls /opt/births1880.csv】查看文件是否存在

【cat /opt/births1880.csv】查看文件内容

4、pandas读取csv中的数据

读取步骤3生成的数据,如图5所示。

【local_data = r’/opt/births1880.csv’】将文件路径赋到变量local_data中

【df2 = pd.read_csv(local_data,header=None)】读取内容赋值到df2

【df2】查看df2的值

【 df3 = pd.read_csv(local_data,header=None,names=[‘names’,’births’])】指定列名字赋值到df3

【df3】查看df3的值

Pandas是Python下一个开源数据分析的库,它提供的数据结构DataFrame极大的简化了数据分析过程中一些繁琐 *** 作,DataFrame是一张多维的表,大家可以把它想象成一张Excel表单或者Sql表。之前这篇文章已经介绍了从各种数据源将原始数据载入到dataframe中,这篇文件介绍怎么将处理好的dataframe中的数据写入到文件和数据库中。

参考资料

博客园.博客园[引用时间2018-1-2]

数据库版本:MySQL

Python版本:3.5

之前用想用MySQLdb来着,后来发现py3.5版本不支持,现选择pymysql

现在想将数据库adidas中的表jd_comment读取至python中的DataFrame,方便数据分析处理

import pymysql

import pandas as pd

import numpy as np

try:

conn = pymysql.connect(host='localhost', user='root', passwd='123456', db='adidas', charset='UTF8')

cur = conn.cursor()

cur.execute('select * from jd_comment')

rows = cur.fetchall() #获取元组列表

cur.close()

conn.close()

except pymysql.Error as e:

print('Mysql Error %d: %s' %(e.args[0], e.args[1]))

cols = list(zip(*cur.description)) #可以看到列名(由元组构成)

#将数据库中的数据保存为DataFrame(数据必须是字典或者数组,列表也必须是list或者数组)

adidas = pd.DataFrame(np.array(rows), columns=list(cols[0]))


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/6784515.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-28
下一篇2023-03-28

发表评论

登录后才能评论

评论列表(0条)

    保存