python第七周笔记_7.第7周python学习笔记

【数据的筛选】

1.转至

表名称.T,可将表格快速的转至

129841371_1_20180410111511660

2.排序

【values】函数

方法1:排序的依据by='排序依据'

129841371_2_20180410111511847

方法2:通过数组也可以进行排序

df.avg.sort_values()

二者区别是,如果用数组调,返回的是数组,在数据框里面调直接返回的是数据框。

ascending=False改变排序升序为降序

对字段进行排序:直接把条件加入

129841371_3_20180410111511972

列出的表不是根据实际的中文顺序进行的,介意的话需建另一张表格进行调整。

【index】按照索引的排序

129841371_4_2018041011151281

【rank】函数

129841371_5_20180410111512144

默认顺序为升序排列,添加ascending参数改为降序

method参数默认为加权平均,改为“min”直接用排序第一个,符合现实使用的习惯。改为“first”则排序不考虑并列情况直接按照顺序来进行。

3.查找重复

129841371_6_20180410111512253

直接可查出有多少个唯一值

129841371_7_20180410111512347

加个count可直接查找出合计数量

4.描述性统计

129841371_8_20180410111512425

129841371_9_2018041011151397

5.累计累加

129841371_10_20180410111513175

6.分段统计

使用更加适合分段统计的cut函数

=pd.cut(df.avg.bins=5) 系统自动分割成5部分

也可以自定义区间,然后命名

129841371_11_20180410111513269

常用于用户分级、消费水平分割等使用场景

7.分位法进行分割统计

分位法函数:.qcut()

129841371_12_20180410111513363

x具体的内容例如df.avg

q排名几等分

retbins是否包含开区间闭区间

precision分割出来的精度

duplicates是否要进行些去重操作【数据的聚合】

聚合函数:mysql不支持分组排名,则可用此函数groupby

129841371_13_20180410111513456

通过for循环可把分组内容打印出来进行查看

129841371_14_20180410111513613

【多表关联】

三种关联方法

1.merge根据键值,对的是某一列

129841371_15_20180410111513644

同名去重不同名保留附加: 修改表的字段名称可用rename()函数 也可把行名提取出来,然后从0开始查其位置进行更改,再赋值的方法(一般用于只改一个,比较简单) col=list(df.columns) col[0]='all' df.columns=col

2.join针对索引进行

129841371_16_20180410111513753

针对的是固定的索引例如日期

3.concat堆叠,对应的是对象

两张表格上下放一起,“暴力组合”

之间是上下拼接,增加函数 .axis=1 进行左右拼接,对不上的默认为空值。

应用场景:例如1~12月份相同字段的销售统计的拼接汇总等。【多重索引】

方法1:可用切片

129841371_17_20180410111513816

方法2:数据框类型的

129841371_18_20180410111513910

不借助groupby进行设置多重索引的方法:set_index

129841371_19_2018041011151482

把列变成索引进行排序,输出可达到整理在一起的效果

129841371_20_20180410111514191

反过来把索引变成列,增加函数reset_index()即可

129841371_21_20180410111514285

这时后面可直接[]去引用。【pandas里面预处理函数---文本函数】

需求:想把表格内某一列带方括号的字段去掉方括号。

思路1:直接进行左右两边切掉(不成功,因为操作是针对数组进行的,是针对索引的切片)

129841371_22_20180410111514425

思路2:调用 .str()(可行)

例如:.str.count统计字符串出现的次数

.str.find(“数据”)从哪个位置开始统计

.str都是针对值里面的字符串进行的操作

129841371_23_20180410111514488

需求:继续把单引号排除

思路1:用空值替换单引号(不可行)

129841371_24_20180410111514566

因为replace针对的是表格内具体的某一值进行替换,所以,上面对表格内字段进行替换并没有成功。

思路2:增加.str (可行)

129841371_25_20180410111514707

【空值&去重】

1.空值

对表赋予空值,及对空值进行再赋值

129841371_26_20180410111514769

129841371_27_20180410111514894

2.删除重复元素

129841371_28_20180410111514972

去重方法1:

129841371_29_20180410111515128

去重方法2:相对更简单

129841371_30_20180410111515316

未完待续~~~~~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值