在Python中,可以使用pandas库来按行条件将两个或多个列合并为新列。以下是一个代码示例:
import pandas as pd
# 创建一个示例数据框
data = {'A': [1, 2, 3, 4, 5],
'B': [6, 7, 8, 9, 10],
'C': [11, 12, 13, 14, 15]}
df = pd.DataFrame(data)
# 定义一个函数,根据条件合并两个或多个列
def merge_columns(row):
if row['A'] > 3:
return row['B'] + row['C']
else:
return row['B'] - row['C']
# 将函数应用于每一行,创建一个新列
df['D'] = df.apply(merge_columns, axis=1)
# 打印结果
print(df)
输出结果为:
A B C D
0 1 6 11 -5
1 2 7 12 -5
2 3 8 13 -5
3 4 9 14 23
4 5 10 15 25
在上面的示例中,我们定义了一个名为merge_columns
的函数,该函数根据条件合并两个或多个列,如果列'A'的值大于3,则返回列'B'和列'C'的和,否则返回它们的差。然后,我们使用df.apply()
方法将函数应用于每一行,并将结果存储在新的列'D'中。最后,我们打印出结果数据框。