我不知道这能不能做到。
对于上下文,我有一个 Dataframe df
,列为modified
和unmodified
。根据用户输入标志use_modified
,我可能希望使用修改或未修改的列来执行一些计算。计算发生在循环中,因此我不希望执行以下操作
for i in len(df):
if use_modified:
# use df["modified"][i] to do some computations
else:
# use df["unmodified"][i] to do some computations
我想创建一个第三列“value_to_use”,它是对modified
或unmodified
的引用,具体取决于标志use_modified
,然后循环不必进行if检查。
2条答案
按热度按时间6mzjoqzu1#
您可以使用中间变量:
但是应该使用向量化函数,而不是对每一行进行迭代。
im9ewurl2#
for i in len(df):
-通常不鼓励简单地迭代 Dataframe 行,因为与vectorized操作相比,性能较差。至于这个问题-你可以定义一个保存列名的变量,并在计算中使用它: