pandas、numpy mysql
pandas 连接mysql
import pandas as pd #导入模块
import sqlalchemy #导入模块sql='select * from 表名' # 选取表engine = sqlalchemy.create_engine('mysql+pymysql://root:密码@localhost:3306/数据库名') #引擎df = pd.read_sql(sql,engine) # 读取
转csv格式
df.to_csv('userinfo.csv',index=False,encoding='utf-8')
新增数据到 mysql
df1.to_sql('stu',engine,index=False,if_exists='append')
pandas的常用语法
默认df接收被读取的表格 :df=pd.read_excel(filepath)
key为关键字
语法 | 功能说明 |
索引 | 选取、筛选 |
df.loc |
|
df.iloc |
|
df.set_index('key') |
|
df[筛选条件] |
|
df['new_key'] = value |
|
del df['key'] |
|
df.drop(labels=0) |
|
df['key'] = df["key"].map({"}) |
|
df.replace() 或 df.key.replcae() |
|
df |
|
df.columns |
|
df.columns=[‘key1’,'key2','key3','key4'] |
|
df.key等价于 df["key"] |
|
df.key.unique() |
|
df.key.value_counts() |
|
df.sort_values('key') |
|
df.sort_index() | 对索引排序 |
df.max()\min()\sum()\mean() |
|
df.idxmax() |
|
df.cusum() |
|
df-1 df+1 df *2 df/2 |
|
pandas 、numpy 与 mysql 的语法对比
默认df接收被读取的表格 :df=pd.read_excel(filepath)
pandas
mysql
导入pandas import pandas as pd 拼接 df.concat([,],
ignore_index=True,
axis=1 or 0)union 关联 pd.merge(left,right,on='key')
pd.merge(left, right, on=['key1', 'key2'])
pd.merge(left, right, how='left', on=['key1', 'key2'])
pd.merge(left,right,left_index=True,right_index=True)
left 、right 、full outer join on a= and b= 取前N行 df.head(N) limit 删除列 del df["na"] 显示
字段名
df.columns 显示
行,列数
df.shape #(行,列数) 显示
某列去重后的数据
df.key.unique() distinct key 填充na为0 df.fillna(0) 分组DataFrameGroupBy groups=df.groupby('key') groupby 分组后列出数值和计数、类型(少用) groups.groups 显示某列去重后的数据 并计数 df.key.value_counts() distinct key,count(1) 分组后并各组计数 groups.size() 分组后计算组数 len(groups) 分组后的组名,
每组的内容
for name,group in groups: #
print(name)分组并计算
某类聚合值
groups.mean()、sum()、min()、max()#所有列
groups.key.mean().head() #指定某列前N行分组后的均值
对分组后的数据统一转换-同组数据相同
(行数不变)
transfrom(自定义四则运算的函数,或者聚合函数),如:
s_score = lambda s : (s-s.mean())/s.std()
groups = df.groupby("district")
groups[['age','novip_buy_times','novip_buy_moneys']].transform(s_score)新字段(四则运算) 新增字段(四则运算,含transform) 【应用:分组计算比例】
df['vip_buy_times_percent'] = df['vip_buy_times']/groups['vip_buy_times'].transform('sum')
新字段(四则运算) 分组后过滤 df2 = groups.filter(lambda g : g['vip_buy_moneys'].mean() >= 1000) having numpy
mysql
导入numpy import numpy as np #使用numpy模块 多维矩阵 分组并计算
多类聚合值
# 所有列
groups.agg([np.mean,np.sum,np.std]) #3维 (均值、求和、标准差)
# 具体列
groups.age.agg([np.mean,np.sum,np.std]).head()透视表 pandas 与 numpy 运用
导入pandas 和 numpy import pandas as pd
import numpy as np
pd.pivot_table() pd.pivot_table(df,values = ['novip_buy_times','vip_buy_times'],index = ['district'],aggfunc=[np.sum,np.mean])
[2*2]维
pandas、numpy mysql相关推荐
- python获取matplotlib、tensorflow、pandas、numpy等的版本version
python获取matplotlib.tensorflow.pandas.numpy的版本version python包.库之间会发生版本冲突.那么你就需要查明版本,然后确定是降级还是升级: 使用__ ...
- Pandas、Numpy 性能优化秘籍(全)
pandas.numpy是Python数据科学中非常常用的库,numpy是Python的数值计算扩展,专门用来处理矩阵,它的运算效率比列表更高效.pandas是基于numpy的数据处理工具,能更方便的 ...
- 【Python】Pandas、Numpy性能优化秘籍(全)
pandas.numpy是Python数据科学中非常常用的库,numpy是Python的数值计算扩展,专门用来处理矩阵,它的运算效率比列表更高效.pandas是基于numpy的数据处理工具,能更方便的 ...
- 第1章 人工智能时代,人人都应该学会利用AI这个工具 / 1-6 Pandas、Numpy、Matplotlib实操
1. Matplotlib.Numpy.Pandas安装: 第一步:打开anaconda中的imooc_ai环境的终端 第二步:安装 matplotlib (图形可视化工具包) 终端输入: pip i ...
- 数据科学必备Pandas、NumPy进行数据清洗方法详解
作为征战多年数据科学领域的小伙伴都很清楚,获取和清理数据的初始步骤会占据工作的 80%,花费大量时间来清理数据集并归结为可以使用的形式. 因此如果是刚刚踏入这个领域或计划踏入这个领域,重要的是能够处理 ...
- Pandas、Numpy使用时常见问题
DataFrame多索引读取 相关数据及输出结果见下图: data_pre=np.zeros(90000).reshape(100,900) # print(data_pre) df_similari ...
- python各库的官方文档(涉及各函数、参数的使用)(pandas、numpy、sklearn)
对于常用的python函数,我们要找他的参数的意义的基本使用的方法,碎片化的一个一个在csdn或者别的地方找它的具体用法,很多时候效率很低,在这里推荐给大家几个常用的官方文档,里面包含了该库下的所有函 ...
- python科学计算三剑客_《Python数据分析三剑客:Pandas、Numpy、Matplotlib》专题
0 2019-10-07 矩阵 1. 矩阵初始化 Numpy函数库中存在两种不同的数据类型(矩阵matrix和数组array),都可以用于处...[作者空间] 20 2019-08-18 Matplo ...
- Python数据分析(一):Pandas、Numpy
作为python数据分析库,Pandas是基于NumPy数组构建的,使数据预处理.清洗.分析工作变得更快更简单.pandas是专门为处理表格和混杂数据设计的,而NumPy更适合处理统一的数值数组数据. ...
最新文章
- SQLite的局限性
- ie6 div height bug css注意点(转)
- 双城生活,一种相对无奈且幸福的选择
- windows核心编程读书笔记(一)
- 特斯拉员工入职3天就“偷”代码,悄悄备份6300多 Python 脚本
- 苹果或于2020年开售iPhone SE2
- python scheduler cron_Python轻量级定时任务调度框架“APScheduler”
- VCAP6 – DCV DESIGN COLLECTION
- select函数fdwrite用法_通俗易懂的学会:SQL窗口函数
- 可拖拽GridView代码解析
- 汉印扫描器设置软件_汉印HPRTK180打印机驱动
- shell 004 __小斌文档 |数组+函数
- 小米十周年,雷军卖情怀
- IPv6- Haproxy1.5.8 支持IPv6测试详情
- Jmeter定时器之吞吐量整形定时器jp@gc Throughput Shaping Timer
- elasticsearch _cat命令使用详情
- FANUC机器人IO通信板卡(CRMA15和CRMA16)详解
- 6句话,读懂什么是通证经济
- matlab-极坐标图和对数坐标图的绘制
- Wifi图标消失,只剩小飞机
热门文章
- Python的内置函数(四十八)、setattr()函数
- python if in 表达式方式
- Android高级控件(一)——ListView绑定CheckBox实现全选,增加和删除等功能
- 使用DB2 pureXML管理蛋白质数据库
- (四)Redis——搭建哨兵机制
- java modbus4j_java使用modbus4j来实现modbusTCP通信
- k8s开启IPVS模式
- 用于土地使用和土地覆盖分类的landsat8的OLI波段组合的选择
- brother printer 打印机 winform 小工具
- 百度工程师带你探秘C++内存管理(ptmalloc篇)