创建一个具有不同值的列,具体取决于熊猫另一列中的值

时间:2019-01-30 13:32:31

标签: python pandas

考虑以下(虚拟)熊猫数据集:

enter image description here

如何用Python构造“类型”列?

为澄清起见,必须以以下方式构造该值:六个最高月份值的Type为'F',其余行的Type为'A'。这是因为“月份”列可能并不总是介于0到10之间,例如如果Month介于0-15之间,则10-15个月的类型为'F'。

2 个答案:

答案 0 :(得分:2)

使用numpy更好:

month_limit = df['Month'].max()-5

df['type'] = np.where(df['Month'] >= month_limit, 'F', 'A')

答案 1 :(得分:0)

希望这会起作用:

month_limit = df['Month'].max()-5
df['Type'] = ['F' if x >= month_limit else 'A' for x in df['Month']]