[英]How to generate new column with values based on condition in another column in pandas
[英]How to edit column values in all rows based on condition of another column?
python/ dataframe
中的 dataframe,其中一列中side
行是 delta+ 或 delta-。 其他列之一具有绝对值PV01
。
我想创建一个额外的列并填充它: IF
side == delta-
populate with ( 0 - PV01
),即将值转换为负数。 IF
side == delta+
然后填充与PV01
相同的值。
这回答了你的问题,但我不确定它是否会有所帮助,
import pandas as pd
d = {'col1': [1, 2, 3], 'delta': [-1,1,-1]}
df = pd.DataFrame(data=d)
print(df,"\n\n")
df['col_new'] = 0
for i in range(len(df)):
if df['delta'][i] > 0:
df['col_new'][i] = df['col1'][i]
else:
df['col_new'][i] = -df['col1'][i]
print(df)
返回
col1 delta
0 1 -1
1 2 1
2 3 -1
col1 delta col_new
0 1 -1 -1
1 2 1 2
2 3 -1 -3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.