在(一)里面我学习了机器学习的可视化,其中的pandas里面的几种图形的使用,现在我们继续学习其中Series.map(),Series.apply(),DataFrame.apply()
一,Series.map()
这个函数的功能是:Series中的map()函数可以接受一个函数或含有映射关系的字典型对象,使用map()是一种实现元素级转换以及其他数据清理工作的便捷方式。例如:我的数据里面有’female’,'male’两种属性,想要更加简洁的表示,就可以使用Series.map()方法,把‘female’改成0,把’male’改成1
df['Species'] = df['Species'].map({'Iris-setosa': 'SET','Iris-virginica': 'VIR','Iris-versicolor': 'VER'})
print(df)
二 ,.apply()
用于改变每一列的属性
df['wide petal'] = df['PetalWidthCm'].apply(lambda v: 1 if v >= 1.3 else 0)
print(df)
axis = 1表示对行进行操作,如果是axis = 0表示对列做操作
三,applymap()
用于对于每个数据单元执行一个函数
print(df.applymap(lambda v: np.log(v) if isinstance(v,float) else v))
四,.Groupby()
它的作用是用于对你所选择的类别进行分组
print(df.groupby('Species').mean())
print(df.groupby('Species').describe())
##series.to_frame
将Series转换为DataFrame。
print(df.groupby('PetalWidthCm')['Species'].unique().to_frame)#按照PetalWidthCm分类以后,输出'Species'这列的整行数据,并且除去重复的,在把它转换成dataframe类型
2.自定义聚集函数
DataFrame.agg(func,axis = 0,* args,** kwargs )
func : 函数,函数名称,函数列表,字典{‘行名/列名’,‘函数名’}
聚类操作的默认是列轴