Pandas 从子集索引数组创建布尔列
Pandas create boolean column from subset index array
我想在长度为 499 的 pandas 数据框中创建一个布尔列。
我有一个索引值数组 a :
a = np.array([206, 252, 272, 315, 349, 374, 394, 406, 440, 466])
我想要 df 数据框中这些索引位置的一列真值。
要处理的简化示例:
arr = np.array(range(0,499))
df = pd.DataFrame(data = arr, columns = ['var1'])
有什么想法吗?
创建一个包含 499 个 False
值的列表并使用 .loc
将 True
设置为从 a
数组中选择的行:
df = pd.DataFrame(data=[False]*499, columns=['var1'])
df.iloc[a] = True
输出:
>>> df[df['var1'] == True]
var1
206 True
252 True
272 True
315 True
349 True
374 True
394 True
406 True
440 True
466 True
我想在长度为 499 的 pandas 数据框中创建一个布尔列。 我有一个索引值数组 a :
a = np.array([206, 252, 272, 315, 349, 374, 394, 406, 440, 466])
我想要 df 数据框中这些索引位置的一列真值。 要处理的简化示例:
arr = np.array(range(0,499))
df = pd.DataFrame(data = arr, columns = ['var1'])
有什么想法吗?
创建一个包含 499 个 False
值的列表并使用 .loc
将 True
设置为从 a
数组中选择的行:
df = pd.DataFrame(data=[False]*499, columns=['var1'])
df.iloc[a] = True
输出:
>>> df[df['var1'] == True]
var1
206 True
252 True
272 True
315 True
349 True
374 True
394 True
406 True
440 True
466 True