用python合并两个dataframe,并将age列除以high列得出新列
时间: 2024-12-13 21:18:59 浏览: 23
在Python中,你可以使用pandas库来合并两个DataFrame并对它们的数据进行运算。假设你有两个DataFrame,分别命名为df1和df2,并且都有名为'age'和'high'的列,你可以按照以下步骤操作:
import pandas as pd
# 假设df1和df2已经准备好
# df1 = pd.DataFrame(... 'age': ..., 'high': ... )
# df2 = pd.DataFrame(... 'age': ..., 'high': ... )
# 合并两个DataFrame,这里使用'outer'连接模式保留所有行
merged_df = pd.merge(df1, df2, on='共同键', how='outer')
# 创建新列 'ratio',计算 age 除以 high 的结果
merged_df['ratio'] = merged_df['age'] / merged_df['high']
# 确保'high'列不是0,避免除以零错误,可以添加条件判断
merged_df['ratio'] = merged_df.apply(lambda x: x['ratio'] if x['high'] != 0 else np.nan, axis=1)
# 如果'共同键'不同,也可以替换'on'为适当的键名
这里假设两个DataFrame有相同的列名'age'和'high',并且你想基于某个共享的键值对(如'df1.common_key == df2.common_key')进行合并。如果你不确定键名,可以查看每个DataFrame的keys()
方法找出共享的列。
相关推荐



















