1 回答

TA貢獻1772條經驗 獲得超8個贊
您可以.set_index()在gender兩個數據幀上然后執行以下操作df.mul():
df1 = pd.DataFrame(columns=['user_id', 'gender', 'value_1', 'value_2', 'value_3'], data = [[112,0,50,60,70], [73,10,20,40,55],[61, 0, 15, 30, 45]])
df2 = pd.DataFrame(columns=['value_1', 'value_2', 'value_3', 'gender'], data = [[2, 3, 5, 0], [4, 6, 7, 10]])
df1 = df1.set_index(['gender', 'user_id'])
df2 = df2.set_index('gender')
out = df1.mul(df2, level=0)
print(out)
印刷:
value_1 value_2 value_3
gender user_id
0 112 100 180 350
10 73 80 240 385
0 61 30 90 225
添加回答
舉報