Я пытаюсь создать взвешенный столбец в pandas.DataFrame
У меня есть питон dictionary
с ключами, являющимися именами столбцов pandas.DataFrame
, и значениями соответствующих весов.
Я хотел бы создать новый столбец, который будет взвешен на основе значений столбцов dictionary
и ссылочных pandas.DataFrame
.
Какой эффективный способ сделать это, учитывая мою конфигурацию dictionary
будет меняться и содержать «неверную конфигурацию»?
Например:
import pandas as pd
import numpy as np
weights = {'IX1' : 0.3, 'IX2' : 0.2, 'IX3' : 0.4, 'IX4' : 0.1}
np.random.seed(0)
df = pd.DataFrame(np.random.randn(10, 3), columns=['IX1', 'IX2', 'IX3'])
##Desired output --- manually combine
df['Composite'] = df['IX1']*0.3 + df['IX2']*0.2 + df['IX3']*0.4
Я бы хотел, чтобы код продолжал выполняться, даже еслиpandas.DataFrame
пропущены столбцы