Я очищаю некоторые данные, и в наборе необработанных данных есть записи как ['Field1.1', 'Field2.1', 'Field1.2', 'Field2.2']
.Для набора данных либо 'Field1' XOR 'Field2'
будет иметь непустую строку.Я хотел бы создать одно поле 'Field.1'
, которое будет извлекать непустую строку из 'Field1.1'
XOR 'Field2.1'
и помещать ее в 'Field.1'
.Точно так же я хотел бы сделать это для 'Field1.2'
и 'Field2.2'
как 'Field.2'
.
Я не уверен, как выбрать подходящие поля, то есть «X.1» с «Y.1» и «X.2» с «Y.2», чтобы сделать это.
Моя логика заключается в том, что, как только я могу выбрать правильные пары, я могу просто использовать оператор concat, чтобы добавить их и тем самым извлечь непустую строку для последующего использования.Если эта логика неверна или существует лучший способ, который не предполагает извлечения непустой строки таким образом, чтобы объединить их, то, пожалуйста, дайте мне знать.
Если логика верна, пожалуйста,объясните, как можно выполнить это извлечение с учетом проблемы с индексированием.
Чтобы быть более понятным, я хочу перейти от:
df = pd.DataFrame({'field1.1': ['string1',''], 'field2.1':['','string2'],
'field1.2': ['string3',''], 'field2.2':['','string4']})
df
Out[1]:
field1.1 field2.1 field1.2 field2.2
0 string1 string2
1 string3 string4
к:
df2 = pd.DataFrame({'field.1': ['string1','string3'], 'field.2':['string2','string4']})
df2
Out[2]:
field.1 field.2
0 string1 string2
1 string3 string4