📌  相关文章
📜  pandas 根据两列的条件创建一个新列 - Python (1)

📅  最后修改于: 2023-12-03 15:03:30.444000             🧑  作者: Mango

pandas 根据两列的条件创建一个新列 - Python

在数据科学中,经常需要根据两列数据的条件进行计算,从而创建一个新列。这时可以使用pandas库的apply方法结合lambda表达式来实现。

以下是一个示例代码片段,展示如何通过两列数据的条件来创建一个新列:

import pandas as pd

# 创建示例数据
df = pd.DataFrame({'num1': [1, 2, 3, 4, 5],
                   'num2': [2, 4, 6, 8, 10]})

# 根据两列数据的条件创建新列
df['new_col'] = df.apply(lambda row: row['num1'] + row['num2']
                         if row['num1'] > 2 and row['num2'] > 5 else 0, axis=1)

print(df)

此代码创建了一个名为df的DataFrame对象,其中包含两个数字列'num1'和'num2'。然后使用apply方法和lambda表达式,根据两列数据的条件来创建一个新列'new_col'。

该lambda表达式中,如果'num1' 大于 2 且 'num2' 大于 5,则新列'new_col'将为'num1'和'num2'的和。否则,新列'new_col'为0。

接着,使用print函数打印DataFrame对象,输出结果如下:

   num1  num2  new_col
0     1     2        0
1     2     4        0
2     3     6        9
3     4     8       12
4     5    10       15

可以看到,新列'new_col'已经成功创建了,并且根据条件进行了计算。

以上就是使用pandas根据两列的条件创建一个新列的方法介绍。此方法可以广泛应用于数据科学和机器学习中的数据预处理过程。