Как умножить один кадр данных панд на другой - PullRequest
2 голосов
/ 26 сентября 2019

У меня есть один фрейм данных формы (1, 78), который состоит из бета-коэффициентов для другого фрейма данных, который имеет форму (250,000, 78) и являются переменными.Имена столбцов из обоих фреймов данных соответствуют друг другу.Как я могу эффективно умножить каждую строку большего кадра данных на коэффициенты в первом кадре данных.

import pandas as pd
import numpy as np
df1 = pd.DataFrame(np.random.randint(0,100, size=(1, 78)))
df1 = df1/100

df2 = pd.DataFrame(np.random.randint(0,100, size=(10, 78)))
df2

По сути, конечным продуктом должен быть кадр данных (10, 78) с df2, в котором каждый столбец умножается на соответствующий столбец в df1.

Ответы [ 2 ]

2 голосов
/ 26 сентября 2019

Вы можете попробовать с np.multiply и np.resize:

final=pd.DataFrame(np.multiply(df2.values,np.resize(df1.values,df2.shape)))
print(final.shape)
0 голосов
/ 27 сентября 2019

Это умножение вы хотите:

df1.values * df2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...