我有两个panda表,d
和num_original_introns
。它们都使用相同的非数字索引进行索引。我想根据d
和num_original_introns
中的值应用一个阶跃函数来转换d
,如下所示:
d["HasOriginalIntrons"] = d["HasOriginalIntrons"] >= 0.5 * num_original_introns["NumberIntrons"] - 0.5 if num_original_introns["NumberIntrons"] != 0 else False
但这给出了错误
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
我知道这是无效的,不可能应用这样的一对条件句,但我似乎找不到谷歌搜索的替代方法。我该怎么做?
要有多个逻辑条件,每个逻辑条件都需要用括号括起来,括号之间必须有一个与号。例如:
d["HasOriginalIntrons"] = (num_original_introns["NumberIntrons"] != 0) &
(
d["HasOriginalIntrons"] >=
(0.5 * num_original_introns["NumberIntrons"] - 0.5)
)