У меня есть следующий фрейм данных:
+-------------------------------------------+----------------------------------------+----------------+----------------------------------+
| Lookup | LookUp Value 1 | LookUp Value 2 | LookUp Value 3 |
+-------------------------------------------+----------------------------------------+----------------+----------------------------------+
| 300000,50000,500000,100000,1000000,200000 | -1820,-1820,-1820,-1820,-1820,-1820 | 1,1,1,1,1,1 | 1820,1820,1820,1820,1820,1820 |
| 100000,1000000,200000,300000,50000,500000 | -1360,-28760,-1360,-28760,-1360,-28760 | 2,3,2,3,2,3 | 4120,31520,4120,31520,4120,31520 |
+-------------------------------------------+----------------------------------------+----------------+----------------------------------+
Каждый столбец - это список, первые столбцы - это ключ поиска, а остальные - это значение поиска. Я хотел бы сгенерировать кадр данных следующим образом.
+--------------------+--------------------+--------------------+
| Lookup_300K_Value1 | Lookup_300K_Value2 | Lookup_300K_Value3 |
+--------------------+--------------------+--------------------+
| -1820 | 1 | 1820 |
| -28760 | 3 | 31520 |
+--------------------+--------------------+--------------------+
На самом деле у меня есть решение, использующее pandas.apply и обрабатывающее строку за строкой. Это очень очень медленно, поэтому я хотел бы посмотреть, есть ли какое-нибудь решение, которое может ускорить процесс? Большое спасибо.
РЕДАКТИРОВАТЬ: я добавил код генерации данных ниже
d = {'Lookup_Key': ['300000,50000,500000,100000,1000000,200000', '100000,1000000,200000,300000,50000,500000'],
'LookUp_Value_1': ['-1820,-1820,-1820,-1820,-1820,-1820', '-1360,-28760,-1360,-28760,-1360,-28760'],
'LookUp_Value_2': ['1,1,1,1,1,1', '2,3,2,3,2,3'],
'LookUp_Value_3': ['1820,1820,1820,1820,1820,1820', '4120,31520,4120,31520,4120,31520']}
df = pd.DataFrame(data=d)