如何用Pandas及Lambda修正代码,计算DataFrame列的最大最小值差
解决Pandas DataFrame列极差计算的问题
嘿,我明白你想算出Glucose列最大值和最小值的差值(也就是极差),但你原代码里的diff()方法用错啦!diff()是用来计算序列中相邻元素的差分的,根本不是干这个活儿的~
用Lambda表达式修正的话,有两种简洁的写法:
方法1:直接在agg()里用Lambda
这是最直接的方式,把计算逻辑塞进agg()方法的lambda参数里:
glucose_range = DiabeticPatients['Glucose'].agg(lambda x: x.max() - x.min())
方法2:先定义Lambda函数再调用
如果你想把这个计算逻辑复用,可以先把lambda存成一个变量,之后随时调用:
# 定义计算极差的lambda函数 calculate_column_range = lambda col: col.max() - col.min() # 对Glucose列应用这个函数 glucose_range = calculate_column_range(DiabeticPatients['Glucose'])
顺带提一句,尽量别用range当变量名哦,它是Python的内置函数,容易引发不必要的冲突~
内容的提问来源于stack exchange,提问作者Nilufar
相关产品推荐
相关产品推荐

