定义方法应用于DataFrame的每一行以创建新列

31 阅读1分钟
import pandas as pd

# 示例数据
data = {
    'itemid': ['a', 'b', 'c', 'd', 'e'],
    'ld7_vol': [50, 30, 40, 60, 70],
    'lld7_vol': [0, 10, 0, 0, 70],
    'd15_vol': [100, 80, 90, 120, 140],
    'vol': [55, 35, 45, 65, 75]
}

# 创建DataFrame
df = pd.DataFrame(data)

# 显示DataFrame
print(df)
def vol_fix(row):
    ld7_vol=row['ld7_vol']
    d15_vol=row['d15_vol']
    vol=row['vol']
    if d15_vol>0:
         vol=0
    else:
         vol=0
df['vol_new']=df.(vol_fix,aixs=1)

注意:一定要加上aixs=1,否则默认将方法应用在行上,可能会报错,找不到列名