У меня есть пустой кадр данных pandas (df
), список пар (индекс, столбец) (pair_list
) и список соответствующих значений (value_list
). Я хочу присвоить значение в value_list
соответствующей позиции в df
в соответствии с pair_list
. В настоящее время я использую следующий код, но он медленный. Есть ли более быстрый способ сделать это?
import pandas as pd
import numpy as np
df = pd.DataFrame(index=[0,1,2,3], columns=['a', 'b','c','d'])
pair_list = [(0,'a'),(1,'c'),(0,'d')]
value_list = np.array([3,2,4])
for pos, item in enumerate(pair_list):
df.at[item] = value_list[pos]
Вывод кода должен быть:
a b c d
0 3 NaN NaN 4
1 NaN NaN 2 NaN
2 NaN NaN NaN NaN
3 NaN NaN NaN NaN