示例。
df1 is 1000 x 20
df2 is subset of df1 10 x 20
我希望df1的每一行都减去df2并将其相加。这将返回另一个df3作为1000 x 10
答案 0 :(得分:0)
您可以使用numpy广播功能来执行此操作。为此,您需要重塑数据以使其可广播
您可以在下面执行类似于sudo代码的操作
df1_data = df1.values.reshape(-1, 10, 20)
df2_data = df2.values
result = df1_data - df2_data # this will give array of shape 100*10*20
result.reshape(-1, 20) # will give array of shape 1000*20
# you can now use the result to create a data frame or use it in further calcualations