将值转换为数据框或特定列中阈值的虚拟值
Convert values to dummies on threshold in dataframe or specific column
我想在一个衬里或使用 pandas 内置函数重现下面这段确切的代码:
您有一个包含 N 列值的数据框,您希望为正值分配 1,为负值分配 0
mask_dummies_1 = df > 0 # Create a mask for positive values
mask_dummies_0 = df < 0 # Create a mask for negative values
df[mask_dummies_1] = 1 # apply positive mask and take the value 1
df[mask_dummies_0] = 0 # apply positive mask and take the value 0
我知道那很脏^^'
有什么猜测吗?
解决方案,一行,显式:
df = 1 * (df > 0)
对于一列:
df['col'] = 1 * (df['col'] > 0)
我想在一个衬里或使用 pandas 内置函数重现下面这段确切的代码:
您有一个包含 N 列值的数据框,您希望为正值分配 1,为负值分配 0
mask_dummies_1 = df > 0 # Create a mask for positive values
mask_dummies_0 = df < 0 # Create a mask for negative values
df[mask_dummies_1] = 1 # apply positive mask and take the value 1
df[mask_dummies_0] = 0 # apply positive mask and take the value 0
我知道那很脏^^' 有什么猜测吗?
解决方案,一行,显式:
df = 1 * (df > 0)
对于一列:
df['col'] = 1 * (df['col'] > 0)