У меня есть pandas.DataFrame
(df
) с некоторыми метаданными, где есть ID
, Column
и Value
, которые я хотел бы объединить с другим df
Например:
df_map = pd.DataFrame({"ID" : [3, 7, 17], "Column" : ["A1", "B7", "C17"],
"Value" : ["ValA1", "ValB7", "ValC17"]})
Я хотел бы объединить выше (для лучшего слова) со следующим df
, где имена столбцов совпадают с именами строкизаписи в Column
выше, а значения строк в ниже df
соответствуют значениям из ID
строк выше.
df_main = pd.DataFrame({"A1" : [3, 6], "A5" : [5, 10], "B7" : [7, 14] ,
"C17" : [17, 34], "C19" : [19, 38] })
Поэтому я бы хотел объединить их в df's
таким образом, чтобы я изменил их на основе столбцов Value
, добавив их в качестве дополнительных измерений, где ID's
match, то есть df_result = combine(df_map, df_main)
Где я в основном ожидаю результат, как указано ниже
df_result = pd.DataFrame({"A1" : [3, 6], "A5" : [5, 10], "B7" : [7, 14] ,
"C17" : [17, 34], "C19" : [19, 38], "Value A1" : ["ValA1", None],
"Value B7" : ["ValB7", None], "Value C17" : ["ValC17", None ]})
Out[30]:
A1 A5 B7 C17 C19 Value A1 Value B7 Value C17
0 3 5 7 17 19 ValA1 ValB7 ValC17
1 6 10 14 34 38 None None None
Не уверен, что лучший способ сделать это в pandas
?