Python Pandas: 计算两个DataFrame中相同'地市'和'区县'组合的申告量环比

本文将介绍如何使用 Python Pandas 库计算两个 DataFrame 中相同 '地市' 和 '区县' 组合的申告量环比。

问题背景:

假设我们有两个 DataFrame,df1 和 df2,分别包含不同时间段的 '地市'、'区县' 和 '申告量' 数据。我们想要计算 df1 中每个 '地市' 和 '区县' 组合的申告量相对于 df2 中相同组合的申告量的环比。

解决方案:

我们可以使用 Pandas 的 merge 函数将两个 DataFrame 合并,然后计算环比值。以下是一个示例代码:pythonimport pandas as pd

创建示例数据data1 = { '地市': ['北京', '上海', '上海', '北京', '广州'], '区县': ['海淀', '浦东', '徐汇', '浦东', '番禺'], '申告量': [100, 200, 300, 400, 500]}df1 = pd.DataFrame(data1)

data2 = { '地市1': ['上海', '北京', '北京', '上海', '广州'], '区县2': ['浦东', '海淀', '徐汇', '徐汇', '番禺'], '申告量2': [50, 100, 200, 300, 400]}df2 = pd.DataFrame(data2)

合并两个DataFramemerged_df = pd.merge(df1, df2, left_on=['地市', '区县'], right_on=['地市1', '区县2'], how='left')

计算环比值merged_df['环比'] = merged_df['申告量'] / merged_df['申告量2']

提取所需的列到新的DataFrameresult_df = merged_df[['地市', '区县', '环比']]

print(result_df)

代码解释:

  1. 创建示例数据: 首先,我们创建了两个示例 DataFrame,df1 和 df2,分别包含 '地市'、'区县' 和 '申告量' 数据。2. 合并 DataFrame: 使用 pd.merge() 函数将 df1 和 df2 按照 '地市' 和 '区县' 列进行左连接。how='left' 参数确保以 df1 为主表进行合并。3. 计算环比值: 创建一个新的 '环比' 列,并将 df1 中的 '申告量' 除以 df2 中的 '申告量2' 的结果存储在其中。4. 提取结果: 创建一个新的 DataFrame result_df,只包含 '地市'、'区县' 和 '环比' 列。5. 打印结果: 打印 result_df 以查看计算结果。

通过以上步骤,我们成功地计算了两个 DataFrame 中相同 '地市' 和 '区县' 组合的申告量环比,并将结果存储在新的 DataFrame 中。

总结:

本文介绍了如何使用 Python Pandas 合并两个 DataFrame 并计算相同 '地市' 和 '区县' 组合的申告量环比。希望这篇文章能帮助你更好地理解和使用 Pandas 进行数据处理。

Python Pandas: 计算两个DataFrame中相同'地市'和'区县'组合的申告量环比

原文地址: https://www.cveoy.top/t/topic/bViO 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录