Pandas数据处理方法(包括数据库数据和普通文件数据)

pandas是一个强大的分析结构化数据的工具集;它的使用基础是Numpy(提供高性能的矩阵运算);用于数据挖掘和数据分析,同时也提供数据清洗功能。

Pandas中常见的数据结构有两种:

Series DataFrame
类似一维数组的对象 类似多维数组/表格数组,每列数据可以是不同的类型;索引包括行索引和列索引
  • Series
    构建Series:ser_obj = pd.Series(range(10));
    由索引和数据组成(索引在左<自动创建的>,数据在右);
    获取数据和索引:ser_obj.index; ser_obj.values;
    预览数据: ser_obj.head(n);ser_obj.tail(n)

  • DateFrame
    获取列数据:df_obj[col_idx]或df_obj.col_idx;
    增加列数据:df_obj[new_col_idx] = data;
    删除列:del df_obj[col_idx];
    按值排序:sort_values(by = “label_name”)

常用方法:

Count 非NA值得数量
describe 针对Series或各DataFrame列计算汇总统计
min/max 计算最小值/最大值
argmin/argmax 计算能够获取到最小值/最大值的索引位置
idxmin/idxmax 计算能够获取到最小值/最大值的索引值
quantile 计算样本的分位数(0-1)
sum 值的总和
mean 值的平均数
median 值的算术中位数(50%分位数)
mad 根据平均值计算平均绝对离差
var 样本值的方差
std 样本值的标准差
skew 样本值的偏度(三阶距)
kurt 样本值的峰度(四阶距)
cumsum 样本值的累计和
cummin/cummax 样本值的累计最小值和累计最大值
diff 计算一阶差分(对时间序列很有用)
pct_change 计算百分数变化
  • 处理丢失数据
    dropna() 丢弃缺失数据;
    fillna() 填补缺失数据

  • 数据过滤
    df[filter_condition] 依据filter_condition(条件)对df进行过滤

读写不同数据源的数据

1.数据库数据读取

pandas提供了读取与存储关系型数据库数据的函数与方法。除了pandas库外,还需要使用SQLAIchemy库建立对应的数据库连接。SQLAIchemy配合相应数据库的Python连接工具(例如MySQL数据库需要安装mysqlclient或者pymysql库),使用create_engine函数,建立一个数据库连接。
creat_engine 中填入的是一个连接字符串。在使用Python的SQLAlchemy时,MySQL和Oracle数据库连接字符串的格式如下:
数据库产品名+连接工具名: //用户名:密码 @ 数据库IP地址:数据库端口号/数据库名称? charset = 数据库数据编码

  • read_sql_table只能够读取数据库的某一个表格,不能实现查询的操作。
    pandas.read_sql_table(table_name, con, schema=None, index_col=None,coerce_float=True, columns=None)
  • read_sql_query则只能实现查询操作,不能直接读取数据库中的某个表。
    pandas.read_sql_query(sql, con, index_col=None, coerce_float=True)
  • read_sql是两者的综合,既能够读取数据库中的某一个表,也能够实现查询操作。
    pandas.read_sql(sql, con, index_col=None, coerce_float=True, columns=None)

pandas三个数据库数据读取函数的参数几乎完全一致,唯一的区别在于传入的是语句还是表名。
在这里插入图片描述

2.数据库数据存储

数据存储只有一个to_sql方法。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值