执行逻辑运算并同时添加数据框的新列?

时间:2019-01-23 04:02:12

标签: python python-3.x dataframe

由于我是新手并且正在学习python,因此我想在数据框中收集与逻辑操作相对应的特定数据并为其添加标签,但是,这需要执行许多行代码。

例如:

df = df[(df['this_col'] >= 10) & (df['anth_col'] < 100)]
result_df = df.copy()
result_df['label'] = 'medium'

我真的很想知道是否有一种方法可以在一行代码中执行而无需应用函数。如果它不能在一行中执行,怎么会?

干杯!

1 个答案:

答案 0 :(得分:2)

query总是返回副本。

result_df = df.query("this_col >= 10 and anth_col < 100").assign(label='medium')

假设您的列可以作为python中的有效标识符名称传递,那么就可以。