2024-04-19 18:35:42 发布
网友
我在Python中有一个包含4列的dataframe,我想根据这个Excel条件创建一个新列:=IF(and(B2=B1;D2=D1;D2=14);1;0)。我是Python新手,不知道如何开始。。
我应该创建for循环吗?如果是,如何引用上一行?
让df['newCol']成为您的新列,下面的代码应该可以工作('B'和'D'是各自的列名。在
df['newCol']
import pandas as pd import numpy as np df = pd.DataFrame({'B': [1,2,2,3], 'D': [2,14,14,4]}) print(df) >>> df B D 0 1 2 1 2 14 2 2 14 3 3 4 df['newCol']= [np.NaN]+[1 if (df.loc[i-1,'B']==df.loc[i,'B'] and df.loc[i-1,'d']==df.loc[i,'D'] and df.loc[i,'D']==14) else 0 for i in range(1,len(df))] print(df) >>> df B D newCol 0 1 2 NaN 1 2 14 0.0 2 2 14 1.0 3 3 4 0.0
让
df['newCol']
成为您的新列,下面的代码应该可以工作('B'和'D'是各自的列名。在相关问题 更多 >
编程相关推荐