如何解决一次减去多列
我有两个数据框:
df_1 = pd.DataFrame({'a' : [7,8,2],'b': [6,6,11],'c': [4,6]})
df_1
和
df_2 = pd.DataFrame({'d' : [8,4,12],'e': [16,2,1],'f': [9,3,4]})
df_2
我的目标是这样的:
以一种“一次性”的方式,我可以多次减去每一列。
我正在尝试 for
循环,但我卡住了!
解决方法
您可以将它们减去为 numpy 数组(使用 .values
),然后将结果放入数据框中:
df_3 = pd.DataFrame(df_1.values - df_2.values,columns=list('xyz'))
# x y z
# 0 -1 -10 -5
# 1 4 4 5
# 2 -10 10 2
或者将 df_1.columns
和 df_2.columns
重命名为 ['x','y','z']
,您可以直接减去它们:
df_1.columns = df_2.columns = list('xyz')
df_3 = df_1 - df_2
# x y z
# 0 -1 -10 -5
# 1 4 4 5
# 2 -10 10 2
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。