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. 读写文件。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)