python - 同时创建新数据框和新列
问题描述
我想知道我们是否可以像下面这样一次创建新的 DataFrame 和新列。
d = {'col1': [1, 2], 'col2': [3, 4]}
df = pd.DataFrame(data=d)
# Can I combine the 2 rows into 1
new_df = df
new_df['new column'] = new_df['col1'] * 2 + new_df['col2'] / 4
print(new_df)
解决方案
您可以使用.assign()
数据框的方法执行此操作,同时创建副本并添加新列:
>>> df
col1 col2
0 1 3
1 2 4
>>> new_df = df.assign(col3=df["col1"] * 2 + df["col2"] / 4)
>>> new_df
col1 col2 col3
0 1 3 2.75
1 2 4 5.00
推荐阅读
- linux-kernel - centos/redhat 从 5.x 升级到 6.x
- ios - 子类化文本字段时,区域设置未从情节提要中获取
- hibernate - 在 org.hibernate.internal.ExceptionConverterImpl.convertCommitException
- php - 在html提交表单中使用php发送电子邮件不起作用
- sql-server - 如何确定哪个用户导致 SELECT PERMISSION DENIED
- lotus-domino - IBM Domino 在 Linux 上通过 shell 调用 wkhtmltopdf
- sql-server - 如何查找已安装 SSIS 的版本
- uilabel - 将 NSAttributedString 与多个 foregroundColor 一起使用会使 UILabel 中的文本看起来低于预期
- batch-file - 使用索引 Batch 在 for 循环中设置变量
- java - OakState0001:未解决的冲突