编写一个 Python 函数,接受 DataFrame 的 Age 和 Salary 列的第二、三、四行作为输入,并找到这些值的平均值和乘积。


输入

假设,示例 DataFrame 为:

 Id Age  salary
0 1 27   40000
1 2 22   25000
2 3 25   40000
3 4 23   35000
4 5 24   30000
5 6 32   30000
6 7 30   50000
7 8 28   20000
8 9 29   32000
9 10 27  23000

输出

给定切片行的平均值和乘积的结果为:

mean is
Age          23.333333
salary    33333.333333
product is
Age                12650
salary    35000000000000

解决方案

为了解决这个问题,我们将遵循以下方法。

  • 定义一个 DataFrame

  • 创建一个函数,使用 iloc 函数切片 Age 和 Salary 列的第二、三、四行,并将结果存储在 result DataFrame 中。

df.iloc[1:4,1:]
  • 从 result DataFrame 中计算平均值和乘积。

示例

让我们看看以下实现,以便更好地理解。

import pandas as pd
def find_mean_prod():
   data = [[1,27,40000],[2,22,25000],[3,25,40000],[4,23,35000],[5,24,30000], [6,32,30000],[7,30,50000],[8,28,20000],[9,29,32000],[10,27,23000]]
   df = pd.DataFrame(data,columns=('Id','Age','salary'))
   print(df)
   print("slicing second,third and fourth rows of age and salary columns\n")
   result = df.iloc[1:4,1:]
   print("mean is\n", result.mean())
   print("product is\n", result.prod())
find_mean_prod()

输出

 Id Age  salary
0 1 27   40000
1 2 22   25000
2 3 25   40000
3 4 23   35000
4 5 24   30000
5 6 32   30000
6 7 30   50000
7 8 28   20000
8 9 29   32000
9 10 27  23000
slicing second,third and fourth rows of age and salary columns
mean is
Age          23.333333
salary    33333.333333
product is
Age                12650
salary    35000000000000

更新于: 2021年2月24日

501 次查看

开启你的 职业生涯

完成课程获得认证

开始学习
广告