Создание новых полей из объединенной строки - PullRequest
0 голосов
/ 06 февраля 2019

одно из моих полей в моем фрейме данных содержит объединенную строку с;разделитель, например:

D = 1,1; BL1 = 2,14; BL2 = 2,14; 1 = 0,4; 2 = 0,1; 3 = 0,1; 4 = 0,4; A = 1,14; B = 1,14; C = 1,1

Я пытался использовать строковые функции, такие как str.find ('BL1'), чтобы найти новые поля, но не знаю, какстроить новые поля и значения рекурсивно

я хочу создать новые поля из строки, чтобы мои поля были

new field 1: D   value: 1
new field 2: BL1 value: 2,14
new field 3: 1   value: 0
etc....

1 Ответ

0 голосов
/ 06 февраля 2019
>>> st = "D=1,1;BL1=2,14;BL2=2,14;1=0,4;2=0,1;3=0,1;4=0,4;A=1,14;B=1,14;C=1,1"
>>> fragments = [s.split('=') for s in st.split(';')]
>>> d = { f[0]: f[1] for f in fragments }

>>> print(d)
{'A': '1,14', 'C': '1,1', 'B': '1,14', 'D': '1,1', 'BL1': '2,14', 'BL2': '2,14', '1': '0,4', '3': '0,1', '2': '0,1', '4': '0,4'}

>>> print(d['BL1'])
2,14

>>> print(d['1'])
0,4
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...