gpt4 book ai didi

python - pandas Dataframe分配问题

转载 作者:行者123 更新时间:2023-12-01 00:11:55 27 4
gpt4 key购买 nike

我想使用 .assign 函数添加新列。

df = pd.DataFrame({'A': range(1, 5), 'B': range(11, 15)})

def delta(df):

df = df.assign(df_delta = df.A - df.B,
df_multiply = df_delta*30
)

return df


print(delta(df))

但出现此错误

NameError: name 'df_delta' is not defined

最佳答案

或者您可以使用 lambda 来实现此目的,它可以读取已分配的列:

def delta(df):
df = df.assign(df_delta = df.A - df.B, df_multiply = lambda x : x['df_delta']*30)
return df

print(delta(df))
<小时/>
   A   B  df_delta  df_multiply
0 1 11 -10 -300
1 2 12 -10 -300
2 3 13 -10 -300
3 4 14 -10 -300

关于python - pandas Dataframe分配问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59583340/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com