将列附加到pandas DataFrame而不改变原始列

时间:2016-03-12 00:39:10

标签: python pandas dataframe

当我们需要向DataFrame添加列时,我们经常写:

df['newcol'] = 123

这会改变(改变)原始的df对象,这并不总是需要的。

这样做的快速和惯用方法是什么?这是一个选项,但它比上面的任务慢了大约10个。

df2 = concat([df, DataFrame(123, index=df.index, columns=['newcol'])], axis=1)

2 个答案:

答案 0 :(得分:4)

copy()

df2 = df.copy()
df2['newcol'] = 123

答案 1 :(得分:2)

您可以使用assign

执行此操作
df2 = df.assign(newcol=123)