我有一个名为original的pandas数据框,我想向它添加一个新列,并将结果数据框保存在一个名为modified的变量中。我该怎么做?
import pandas as pd
import numpy as np
original = pd.DataFrame(np.random.randn(5, 2), columns=['a', 'b'])
类似问题的解决方法如下:
original['c'] = original['b'].abs()
这对我不起作用,因为它修改了原始数据帧。一个可能的解决方案是使用join,但这不允许我命名它,也不允许用标量值填充它:
modified = original.join(original['b'].abs(),rsuffix='_abs')
其目的是能够在没有临时变量的单行中添加列,以实现以下效果:
modified = original.some_op() \
.a_different_op() \
.add_a_column() \ # <- the step I can't figure out
.another_op() \
.final_op()
使用
pandas.DataFrame.assign
方法这里介绍http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.assign.html相关问题 更多 >
编程相关推荐