【发布时间】:2021-12-19 10:55:01
【问题描述】:
我有很多变量的数据框。例如,我想根据第 1 列生成一个虚拟变量。如果第 1 列的观察值大于 0.25,则虚拟变量用 1 填充。如果第 1 列的观察值小于 0.25,则虚拟变量用 0 填充。有什么想法吗?非常感谢。
【问题讨论】:
标签: python pandas dataframe dummy-variable
我有很多变量的数据框。例如,我想根据第 1 列生成一个虚拟变量。如果第 1 列的观察值大于 0.25,则虚拟变量用 1 填充。如果第 1 列的观察值小于 0.25,则虚拟变量用 0 填充。有什么想法吗?非常感谢。
【问题讨论】:
标签: python pandas dataframe dummy-variable
IIUC 比较更大的值,例如 0.25,然后转换为整数以将 True/False 映射到 1/0:
df[1] = df[1].gt(0.25).astype(int)
如果是第一列:
df.iloc[:, 0] = df.iloc[:, 0].gt(0.25).astype(int)
【讨论】:
df[1] = 或 df.iloc[:, 0] = 这个 - df['dummy1'] =