1) массив NumPy r
, который состоит из строк.
import numpy as np
r = np.array([['S', 'S'],['S', 'V1'],['S', 'V2'],['V1', 'S'],['V1', 'V1']])
2) массив NUMPY acc
значения.Первое значение относится к первому элементу двумерного массива r
, а второе значение относится ко второму элементу двумерного массива r
acc = np.array([0.613,0.387])
3) Вопрос: Я хочу заполнить фрейм данных df1.Например: Row1) Массив r[0]=['S', 'S']
содержит 'S' в обоих, затем заполните S
= 0,613 + 0,387 = 1,0 в df1, а V1
и V2
в df1 будут равны нулю, поскольку они несуществуют в массиве.Row2) Массив r[1]=['S', 'V1']
содержит один 'S', затем заполните S
= 0,613 и V1=0.387
в df1 и V2=0
(не существует) ....... и т. Д.,
Желаемый выход:
import pandas as pd
df1 = pd.DataFrame({'S':[1,0.613,0.613,0.387,0], 'V1': [0,0.387,0,0.613,1],'V2': [0,0,0.387,0,0]})
print(df1)
S V1 V2
0 1.000 0.000 0.000
1 0.613 0.387 0.000
2 0.613 0.000 0.387
3 0.387 0.613 0.000
4 0.000 1.000 0.000