У меня есть файл со многими разными слабо названными мнемониками («оригинальная мнемоника»). Мне нужно изменить имена этих слабо названных мнемоник на общее имя («общая мнемоника»). Я считаю, что должен делать это со словарем, но я не уверен.найти заменять имя по приоритету источника (python)
вот пример данных (вы можете создать dataframe из кода ниже):
originalMnemonic = ['ABCGR1','ABCGR2','ABCGR3','ABCGR4','ABCRT1','ABCRT2','ABCRT3','ABCRT4']
generalMnemonic = ['GR','GR','GR','GR','RT','RT','RT','RT']
sourcePriority = [2,3,4,5,1,2,3,4]
curveDf = pd.DataFrame(
{'originalMnemonic': originalMnemonic,
'generalMnemonic': generalMnemonic,
'sourcePriority': sourcePriority
})
Я дал каждому «общий Мнемоник» название «оригинальный Мнемоник», я также поставила Приоритет источника.
Как мне найти и заменить имена «исходной мнемоники» на «общее мнемоническое» имя. В порядке приоритета источника. (Т.е. если источник Prioirty 1 присутствует, используйте 1. если 1 нет использование приоритета источника 2.)
Вот пример файла, который я хотел бы изменить:
curveName = ['ABCGR1', 'ABCGR2', 'ABCGR3', 'ABCGR4', 'ABCRT1', 'ABCRT2', 'ABCRT3', 'ABCRT4']
curveDesc = ['I only want this name to be GR','dont change name','dont change name','dont change name',
'I only want this name to be RT','dont change name','dont change name','dont change name']
changeDf = pd.DataFrame(
{'curveName': curveName,
'curveDesc': curveDesc
})
«curveName» следует изменить на «общее мнемоническое» имя из «curveDF» в порядке приоритета источника.
Вот мой желаемый результат: (обратите внимание, как ABCGR1 изменилось к ГР (он имеет исходный приоритет 2, и ABCRT1 изменилось до комнатной температуры (она имеет источник приоритет 1)
originalMnemonic = ['GR','ABCGR2','ABCGR3','ABCGR4','RT','ABCRT2','ABCRT3','ABCRT4']
generalMnemonic = ['GR','GR','GR','GR','RT','RT','RT','RT']
sourcePriority = [2,3,4,5,1,2,3,4]
outputDf = pd.DataFrame(
{'originalMnemonic': originalMnemonic,
'generalMnemonic': generalMnemonic,
'sourcePriority': sourcePriority
})
outputDf
любую помощь, чтобы получить меня на правильном пути ценится
мог йо u разместите свой желаемый (результирующий) набор данных? – MaxU
Я добавил желаемый результат и изменил часть кода, чтобы иметь больше смысла. Спасибо. – brandog