pandas入门01——DataFrame数据处理及插入mysql数据库

这篇博客介绍了如何使用pandas DataFrame进行数据处理,包括修改表头、数据格式转换,以及如何将DataFrame数据插入到MySQL数据库中。同时,文章也探讨了DataFrame的增删改查操作,提供了各种实用技巧。
摘要由CSDN通过智能技术生成

pandas入门01——DataFrame数据处理及插入mysql数据库

前言

最近股市很火,本人就想着搞个量化分析的程序去炒炒股,说不定就走上人生巅峰了呢。

网上股市的数据接口大部分都是python的,返回的数据结构是DataFrame,本篇就记录一下本人学习DataFrame进行数据处理及插入数据库的过程。

环境准备

  • python环境,推荐anaconda,网上安装教程很多
  • mysql数据库,docker安装mysql数据库教程 传送门
  • 安装tushare (提供获取股票数据接口)
  • 安装pymysql

tushare和pymysql可以使用anaconda界面安装,也可以命令行安装 conda install xxx或者 pip install xxx

windows环境下安装好python后,在cmd命令行界面输入python有可能直接跳到应用商店,此时需要把环境变量path上移,移到应用商店环境变量上面就好了

DataFrame数据准备

import tushare as ts
import pandas as pd

pd.set_option('display.max_columns', None)
pd.set_option('display.max_rows', None)
#加上上面2行,保证控制台打印完整数据
pro = ts.pro_api()
df = pro.query('trade_cal', start_date='20200101', end_date='20201231')
print(df)

获取股票交易日数据如下:

    exchange  cal_date  is_open
0        SSE  20200101        0
1        SSE  20200102        1
2        SSE  20200103        1
3        SSE  20200104        0
4        SSE  20200105        0
...

DataFrame数据处理

修改表头

由于DataFrame的数据要存到数据库里,默认情况下数据库的列名就是DataFrame的列名

#方法一
#直接修改,此方法有个缺点,必须写明每一列,不然会报错
df.columns=['exchange','trade_date','isopen']
#方法二
#指定修改,推荐
df.rename(columns={'cal_date':'trade_date','is_open':'is_open'},inplace=True)

修改数据

由于返回的日期格式是yyyyMMdd,想修改为yyyy-MM-dd格式

df['trade_date']=df['trade_date'].apply(lambda x:x[0:4]+"-"+x[4:6]+"-"+x[6:8])

数据入库

import tushare as ts
import pandas as pd
from sqlalchemy import create_engine

pd.set_option('display.max_columns', None)
pd.set_option('display.max_rows', None)
pro = ts.pro_api()

df = pro.query('trade_cal', start_date='20200101', end_date='20201231')
print(df)
df.rename(columns={
   'exchange':'exchange','cal_date':'trade_date','is_open':'is_open'},inplace=True
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值