python数据分析pandas函数应用

        

1.apply 和applymap

import numpy as np
import pandas as pd
df1=pd.DataFrame(np.random.randn(5,4))
df

#绝对值
np.abs(df1)

#1.2通过apply将函数用到列或者行
#求一列的最大值
df1.apply(lambda x:x.max())  

#求一行的最大值
df1.apply(lambda x:x.max(),axis=1)

#通过applymap将函数应用到每个数据
f2=lambda x:'%.2f'%x
df1.applymap(f2)

2.排序

#2.1索引排序
s1=pd.Series(np.arange(4),index=['d','b','c','a'])
s1

s1.sort_index()  #默认升序
s1.sort_index(ascending=False) #降序

pd1=pd.DataFrame(np.arange(12).reshape(4,3),index=['b','d','c','a'],columns=['B','C','A'])
pd1
#按照行排序
pd1.sort_index(axis=1)

#2.2按照值排序    
s1.sort_values() #按照值排序
s1['a']=np.nan
s1.sort_values()#当有缺失值 默认排在最后
s1.sort_values(ascending=False)#当有缺失值 降序也默认排在最后
pd1.sort_values(by='A') #按照列排序
pd1.sort_values(by=['A','B']) #按照多列排序,先按照A 列排

3.唯一值和成员属性

s1=pd.Series([2,6,8,9,8,3,6])
s1
s2=s1.unique()  #返回一个数组 返回一个唯一值
s2
#计算值个数
s1.value_counts() #返回一个Series

#isin 判断值是否存在,返回布尔类型
s1.isin([8])  #判断8是否存在s1中
    
#判断多个值
s1.isin([8,2])

#DataFrame
data=pd.DataFrame({'a':[3,7,9,0],'b':[1,-1,4,8],'c':[0,6,-3,2]})
data

data.isin([2,4]) #判断2,4是否存在

#查看次数 c列
data.value_counts('c') 

4.处理缺失数据

df3=pd.DataFrame([np.random.randn(3),[1,2,np.nan],[np.nan,4,np.nan],[1,2,3]])
df3
#1.判断是否存在缺失值 isnull()
df3.isnull()

#2.丢弃缺失的数据 dropna() 丢弃行
df3.dropna()

#2.丢弃列 dropna(axis=1)
df3.dropna(axis=1)

#3.填充缺失数据 fillna()
df3.fillna(-100)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值