【发布时间】:2020-10-12 00:22:37
【问题描述】:
以以下数据框为例:
df = pd.DataFrame({'Sample':['X', 'Y', 'Z'], 'Base':[2, 10, 3], 'A':[0,5,100], 'C':[0,10,7]})
我想添加一个名为df["indices"] 的新列,其中包含df["A"] 和/或df["C"] 列的索引,前提是它们满足两个条件:
- 必须大于 5
-
df["A"]/df["Base"]或df["C"]/df["Base"]必须大于等于 1
生成的数据框将是:
df = pd.DataFrame({'Sample':['X', 'Y', 'Z'], 'Base':[2, 20, 3], 'A':[0,6,100], 'C':[0,10,7], 'indices': ['','C','A,C']})
我可以使用df[['A','C']] > 5 为我的第一个条件获取 True 或 False 值,但我无法让它与我的条件 2 一起使用,该条件 2 基于我的数据框中的另一列。在新列中获取我得到 True 的索引是另一回事。我想像 apply 和 get_loc 或 index 的东西,但无论如何我都无法让它工作。
【问题讨论】: