我有一个名为的 pandas DataFrameoriginal我想向其中添加一个新列并将生成的 DataFrame 保存在名为的变量中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()
这对我不起作用,因为它修改了original数据框。一个潜在的解决方案是使用 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()
Use pandas.DataFrame.assign
这里描述的方法http://pandas.pydata.org/pandas-docs/stable/ generated/pandas.DataFrame.assign.html http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.assign.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)