Arj*_*run 2 python dataframe pandas
我正在向数据框添加一列,其中通过比较数据框中的其他两列来确定列值.添加列的代码是:
lst = []
for x in range(len(df)):
if df['ColumnA'][x] > df['ColumnB'][x]:
lst.append(df['ColumnB'][x])
else:
lst.append(df['ColumnA'][x])
df['ColumnC'] = lst
Run Code Online (Sandbox Code Playgroud)
我的问题是,有更高效/ pythonic的方式来做到这一点?过去我被告知如果我每个循环遍历数据帧的每一行都要小心,所以想知道我是否遗漏了一些东西.谢谢!
是的,只需采取最低限度:
df['ColumnC'] = df[['ColumnA', 'ColumnB']].min(1)
Run Code Online (Sandbox Code Playgroud)