Python 如何在dask数据帧中减去两个数据帧列?

Python 如何在dask数据帧中减去两个数据帧列?,python,dask,Python,Dask,我有两个数据帧,像df1,df2。 在df1中,我有4列(A、B、C、D)和两行, 在df2中,我有4列(A、B、C、D)和两行。 现在我想减去两个数据帧,比如df1['A']-df2['A']等等。但我不知道怎么做 df1- df2- 只需进行减法运算,但要记住索引,例如,假设我的df1和df2具有相同的列,但索引不同: df1 = dd.from_array(np.arange(8).reshape(2, 4), columns=['A','B','C','D']) df2 = dd.f

我有两个数据帧,像df1,df2。 在df1中,我有4列(A、B、C、D)和两行, 在df2中,我有4列(A、B、C、D)和两行。 现在我想减去两个数据帧,比如df1['A']-df2['A']等等。但我不知道怎么做

df1-

df2-


只需进行减法运算,但要记住索引,例如,假设我的
df1
df2
具有相同的列,但索引不同:

df1 = dd.from_array(np.arange(8).reshape(2, 4), columns=['A','B','C','D'])

df2 = dd.from_pandas(pd.DataFrame(
    np.arange(8).reshape(2, 4),
    columns=['A','B','C','D'],
    index=[1, 2]
), npartitions=1)
然后:

另一方面,让我们将索引从df2匹配到df1,然后进行减法

df2 = df2.assign(idx=1)
df2 = df2.set_index(df2.idx.cumsum() - 1)
df2 = df2.drop(columns=['idx'])

(df1 - df2).compute()


#       A   B   C   D
# 0     0   0   0   0
# 1     0   0   0   0

您好,请附上您的代码的最小可复制示例。请花时间格式化您的问题,以便它不那么难阅读。如果你希望有人来帮助你解决问题,你可以努力使这个问题易于阅读。我理解。谢谢
df2 = df2.assign(idx=1)
df2 = df2.set_index(df2.idx.cumsum() - 1)
df2 = df2.drop(columns=['idx'])

(df1 - df2).compute()


#       A   B   C   D
# 0     0   0   0   0
# 1     0   0   0   0