Python关于map、apply、applymap函数

1.map函数
把一个函数功能,应用到另一个序列的每一个数据上
例一:

r = np.arrange(10)
r
def f(x):
	if x%2 = 0:
		return x/2
	else:
		return x*2
list(map(f,r))
r.map(f)

例二:

def f(x):
	if x <90:
		return "不及格"
	elif x <120:
		return "及格"
	elif x <135:
		return "良好"
	else:
		return "优秀"
grade[] = grade.math.map(f)
grade["姓"] = grade.name.map(lambda x:x[0])
grade["名"] = grade.name.map(lambda x:x[1:])
grade.height.map(lambda x:x[:-2]
d = {"巨蟹座":"巨蟹","双子座":"双子"}
df.星座.map(d)
df.星座.map(d,na_action = "ignore")   #指定删除空值

2.apply函数
既可用于series,也可用于dataframe,针对序列中每一个值,针对dateframe中每一列

grade.语文.map(lambda x:"偶数" if x%2 = 0 else "奇数")
grade.语文.apply(lambda x:"偶数" if x%2 = 0 else "奇数")
grade.apply(np.sum,axis =0 )   #求总分,对每一行求和

3.applymap
针对dateframe,作用于dateframe的每一个元素,类似于map作用于series的效果

grade2.applymap(lambda x:x*3)
a = "sdf"
isinstance(a,int)   #判断a是否是整型
def f(x):
	if isinstance(x,str):
		return x[-1]
	elif isinstance(x,int):
		return x%100
	else:
		return x
grade2.applymap(f)

你可能感兴趣的:(python,python)