首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从一个数据帧中减去除第一列Pandas之外的另一个数据帧

从一个数据帧中减去除第一列Pandas之外的另一个数据帧
EN

Stack Overflow用户
提问于 2018-06-03 01:06:37
回答 2查看 4.9K关注 0票数 0

我必须使用相同的列进行数据帧。我的任务应该是在不接触第一列('A')的情况下从df_nap中减去df_tot。最简单的解决方案是什么?

谢谢!

代码语言:javascript
运行
复制
import numpy as np
import pandas as pd

df_tot = pd.DataFrame(np.random.randint(10, size=(3,4)), columns=list('ABCD'))
df_nap = pd.DataFrame(np.random.randint(10, size=(3,4)), columns=list('ABCD'))
EN

回答 2

Stack Overflow用户

发布于 2018-06-03 01:19:20

在使用pd.DataFrame.sub之前为两个数据帧设置公共索引

代码语言:javascript
运行
复制
df_tot = df_tot.set_index('Wavelength')
df_nap = df_nap.set_index('Wavelength')

res = df_tot.sub(df_nap)

如果您需要‘波长’作为一个系列而不是一个索引,您可以对结果调用reset_index

代码语言:javascript
运行
复制
res = res.reset_index()

但是,将唯一的行标识符存储为索引而不是序列有一定的好处。例如,更高效的查找和合并功能。

票数 1
EN

Stack Overflow用户

发布于 2018-06-03 01:25:39

您还可以使用joiniloc

代码语言:javascript
运行
复制
df_tot.iloc[:,:1].join(df_tot.iloc[:,1:]-df_nap.iloc[:,1:])

但是这意味着柱子的顺序是相同的,“波长”是第一个。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50659245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档