Pandas写入数据到MySql

Pandas写入数据到MySql,第1张

import pandas as pd

from sqlqlchemy import create_engine

def getData(path):

        data = pd.read_excel(path)

        return data

def writeData(data):

        conn = create_engine(

                                           "mysql+pymysql://root:keijay@localhost:3306/db_name?charset=utf8")

        pd.io.sql.to_sql(data, "table_name", con = conn,index = False)

if __name__ == "__main__":

        path = "E:\datasets\test.xlsx"

        data = getData(path)

         writeData(data)

遇到问题:

  1、写入完成后有告警:

        解决方法:

              pip install mysql-connect-python -i https://pypi.douban.com/simple

              将:

                    conn = create_engine(

"mysql+pymysql ://root:keijay@localhost:3306/db_name?charset=utf8")

              修改为:

                      conn = create_engine(

" mysql+mysqlconnector ://root:keijay@localhost/test_python?charset=utf8")

首先是引入pandas和numpy,这是经常配合使用的两个包,pandas依赖于numpy,引入以后我们可以直接使用np/pd来表示这个两个模块

创建一个时间索引,所谓的索引(index)就是每一行数据的id,可以标识每一行的唯一值

为了快速入门,我们看一下如何创建一个6X4的数据:randn函数用于创建随机数,参数表示行数和列数,dates是上一步创建的索引列

我们还可以使用字典来创建数据框,例如创建一个列名为A的数据框,索引是自动创建的整数

这又是一个字典创建DataFrame的例子

假如字典内的数据长度不同,以最长的数据为准,比如B列有4行:

可以使用dtypes来查看各行的数据格式

接着看一下如何查看数据框中的数据,看一下所有的数据

使用head查看前几行数据(默认是前5行),不过你可以指定前几行

查看前三行数据

使用tail查看后5行数据

查看数据框的索引

查看列名用columns

Pandas是Python下一个开源数据分析的库,它提供的数据结构DataFrame极大的简化了数据分析过程中一些繁琐 *** 作。

1. 基本使用:创建DataFrame. DataFrame是一张二维的表,大家可以把它想象成一张Excel表单或者Sql表。Excel 2007及其以后的版本的最大行数是1048576,最大列数是16384,超过这个规模的数据Excel就会d出个框框“此文本包含多行文本,无法放置在一个工作表中”。Pandas处理上千万的数据是易如反掌的sh事情,同时随后我们也将看到它比SQL有更强的表达能力,可以做很多复杂的 *** 作,要写的code也更少。

说了一大堆它的好处,要实际感触还得动手码代码。首要的任务就是创建一个DataFrame,它有几种创建方式:

(1)列表,序列(pandas.Series), numpy.ndarray的字典

二维numpy.ndarray

别的DataFrame

结构化的记录(structured arrays)

(2)其中,二维ndarray创建DataFrame,代码敲得最少:

import pandas as pd

import numpy as np

df = pd.DataFrame(np.random.randn(10, 4))

df

0 1 2 3

0 0.927474 0.127571 1.655908 0.570818

1 -0.425084 -0.382933 0.468073 -0.862898

2 -1.602712 -0.225793 -0.688641 1.167477

3 -1.771992 -0.692575 -0.693494 -1.063697

4 -0.456724 0.371165 1.883742 -0.344189

5 1.024734 0.647224 1.134449 0.266797

6 1.247507 0.114464 2.271932 -0.682767

7 -0.190627 -0.096997 -0.204778 -0.440155

8 -0.471289 -1.025644 -0.741181 -1.707240

9 -0.172242 0.702187 -1.138795 -0.112005

(3)通过describe方法,可以对df中的数据有个大概的了解:

df.describe()

0 1 2 3

count 10.000000 10.000000 10.000000 10.000000

mean -0.189096 -0.046133 0.394722 -0.320786

std 1.027134 0.557420 1.258019 0.837497

min -1.771992 -1.025644 -1.138795 -1.707240

25% -0.467648 -0.343648 -0.692281 -0.817865

50% -0.307856 0.008734 0.131648 -0.392172

75% 0.652545 0.310266 1.525543 0.172096

max 1.247507 0.702187 2.271932 1.167477

2. 改变cell。

3. group by。

4. 读写文件。


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

原文地址: http://outofmemory.cn/zaji/8487523.html

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

发表评论

登录后才能评论

评论列表(0条)

保存