pandas apply使用多列计算生成新的列实现示例
这篇文章主要介绍了pandas apply使用多列计算生成新的列实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
在python数据分析中,有时需要根据多列数据生成中间结果,pandas给我们带来了很多方便,通常简短的代码可以实现一些高级功能,灵活掌握一些技巧可以事倍功半
pandas的apply方法用于对指定列的每个元素进行相同的操作,下面生成一个dataFrame用于演示:
1 2 3 4 5 6 7 | import pandas as pd a = range ( 5 ) b = range ( 5 , 10 ) c = range ( 10 , 15 ) data = pd.DataFrame([a,b,c]).T data.columns = [ "a" , "b" , "c" ] print (data) |
上面的代码生成的数据如下:
a b c
0 0 5 10
1 1 6 11
2 2 7 12
3 3 8 13
4 4 9 14
下面使用使用a,b两列相加生成x1列
1 | data[ "x1" ] = data[[ "a" , "b" ]]. apply ( lambda x:x[ "a" ] + x[ "b" ],axis = 1 ) |
结果如下:
a b c x1
0 0 5 10 5
1 1 6 11 7
2 2 7 12 9
3 3 8 13 11
4 4 9 14 13
关键的参数是axis=1,指定计算的方向是行而不是列,默认是0,也就是按列进行计算
到此这篇关于pandas apply使用多列计算生成新的列实现示例的文章就介绍到这