文章目录
安装jupyter
pip3 install jupyter
打开jupyter文档
1: 在命令行输入以下命令
jupyter notebook
2:完成之后,Jupyter Notebooks 就会在默认网络浏览器打开,地址是:
http://localhost:8888/tree
新建python文件
链接数据库
链接 Mysql
from sqlalchemy import create_engine
mysql_engine = create_engine('mysql+pymysql://mysql:root&@127.0.0.1:3306/test_db?charset=utf8mb4')
链接 Redis
import redis
redis_engine = redis.Redis(host='127.0.0.1', port=6381,db=0)
链接 MongoDB
from pymongo import MongoClient
mongo_client = MongoClient("mongodb://127.0.0.1:27017")
mongo_engine = mongo_client.test_mongo
查询数据
# 导入 pandas
import pandas as pd
查询 Mysql 数据库
map 用法
# 利用map,将时间戳转化为时分秒
df['需要转化的列'].map(调用的转化函数)
举例如下:
常用时间转换方法
# 利用pandas自带方法,将时间戳转化为具体时间以及日期(此处转化为北京时间)
# 时间戳转化为具体时间
pd.to_datetime(df['created_time'], unit='s') + pd.Timedelta(hours=8)
# 时间戳转化为日期
pd.to_datetime(df['created_time']).dt.floor('d')
举例如下:
根据关联列,合并两个文档
df1.merge(df2, how='left', left_on='df1_column', right_on='df2_column', sort=False, copy=False)
举例如下:
分组数量统计
# 根据 class 统计学生数量
df.set_index(['name_x', 'class']).count(level='class') # 以学生姓名为唯一识别
df.groupby(['class'], as_index=False).count() # 以 class 分组
其余常用方法
# 文档合并
# pd.concat([df1,df2,df3,df4,df5,df6])
# 根据 mobile 列,删除重复数据
df = df.drop_duplicates('mobile')
# 取出 class =1 的数据
df[df['class']==1]
# 取出 class =1 且 学生姓名为 李一 的数据
df[(df['class']==1) & (df['name_x']=='李一')]