查找给定 Pandas DataFrame 的几何平均数。


Pandas DataFrame 是一个 Python 开源库,用于以表格形式存储、删除、修改和更新数据。它的设计使得它可以轻松地与 Python 程序集成以进行数据分析。它提供了各种数据操作技术和数据处理工具。

几何平均数的数学概念是确定给定数值数据集中平均值或中心趋势的一个非常有用的概念。这是通过将数据集中每个单独的数字相乘来实现的,结果是一个 n 次方根。而 n 的值则取决于数据组中值的总数。

语法

创建 DataFrame 的语法

df = pandas.DataFrame(data, index, columns)
  • “pandas.DataFrame” 创建空 DataFrame 对象

  • “data” 用于存储数据。它可以是列表或字典

  • “index” 和 “columns” 是可选的,用于指定行和列标签

方法 1 - 使用 NumPy

以下程序演示了如何使用 NumPy 查找给定 DataFrame 的几何平均数

算法

步骤 1 - 导入 Pandas 和 NumPy 模块

步骤 2 - 创建 Pandas DataFrame 来存储数组值

步骤 3 - 在名为 geometric_mean 的变量中使用 NumPy 函数来查找平均值。

步骤 4 - 打印输出

示例

import pandas as pd
import numpy as np

# create a sample dataframe
df = pd.DataFrame({
   'A': [2, 4, 6, 8],
   'B': [1, 3, 5, 7]
})

# calculate the geometric mean for each column
geometric_mean = np.exp(np.log(df).mean())

# display the result
print("Geometric mean for each column:\n", geometric_mean)

输出

Geometric mean for each column:
A   4.426728
B   3.201086

方法 2 - 使用自定义函数

以下程序演示了一个名为“geometric_mean”的自定义函数,该函数接受 Pandas DataFrame 作为输入,并通过使用循环计算 DataFrame 中所有值的几何平均数。

算法

步骤 1 - 导入 Pandas 库

步骤 2 - 创建 DataFrame 并存储值。

步骤 3 - 定义自定义函数

步骤 4 - 创建一个名为“gm”的新变量来调用该函数。

步骤 5 - 通过调用“gm”打印输出。

示例

import pandas as pd

# create sample dataframe
df = pd.DataFrame({'A': [1, 2, 3, 4], 'B': [5, 6, 7, 8]})

# define a function to calculate geometric mean
def geometric_mean(data):
   product = 1
   for val in data.to_numpy().ravel():
    product *= val
   return product**(1.0/len(data.to_numpy().ravel()))

# calculate geometric mean of dataframe using custom function
gm = geometric_mean(df)

print(gm)

输出

3.764350599503129

方法 3 - 使用 Scipy 库

Scipy 是一个 Python 库,它提供了强大的科学计算能力,使您可以使用数值算法、优化和统计分析。

以下代码使用 scipy.stats 模块中的 gmean() 函数计算 Pandas DataFrame 的几何平均数。

算法

步骤 1 - 导入 Pandas、NumPy、Scipy 库

步骤 2 - 创建 DataFrame “df”

步骤 3 - 使用 NumPy 和 Scipy 函数。

步骤 4 - 打印输出。

示例

import numpy as np
from scipy.stats import gmean
import pandas as pd

# create sample dataframe
df = pd.DataFrame({'A': [1, 2, 3, 4], 'B': [5, 6, 7, 8]})

# calculate geometric mean of dataframe using Scipy
gm = gmean(df.to_numpy().ravel())

print(gm)

输出

3.764350599503128

结论

几何平均数是一个强大的数学公式,通常用于计算一系列数字相乘的平均值,它可以成为 Pandas DataFrame 中数据分析的极其有价值的工具。这个公式在需要分析多列的情况下尤其有用,因为它可以快速准确地用于发现每列的平均值。通过利用几何平均数,您可以发现数据中可能被忽视的洞察和模式,从而使您能够根据信息做出明智的决策并采取有针对性的行动。

更新于:2023年8月10日

658 次查看

启动您的 职业生涯

通过完成课程获得认证

开始
广告
© . All rights reserved.