Попытка использовать значения (в виде строки) из одного столбца, чтобы определить, что удаляется из другого столбца.Остаток столбца должен быть неизменным.
Пример данных:
import pandas as pd
dfTest = pd.DataFrame({
'date': ['190225', '190225', '190226'],
'foo': ['190225-file1_190225', '190225-file2_190225', '190226-file3_190226']
})
dfTest
Результирующий кадр данных:
| date | foo
------------------------------------
0 | 190225 | 190225-file1_190225
1 | 190225 | 190225-file2_190225
2 | 190226 | 190226-file3_190226
Мне нужно создать столбец 'bar', где 'У foo 'все совпадения с' date 'удалены.
Я ищу вот что:
| date | foo | bar
-----------------------------------------------
0 | 190225 | 190225-file1_190225 | -file1_
1 | 190225 | 190225-file2_190225 | -file2_
2 | 190226 | 190226-file3_190226 | -file3_
Содержимое столбца' date ', отображаются ли они в начале, серединеили конец должен быть удален для каждой строки 'foo.'
Я пробовал несколько вещей, таких как приведенный ниже код, но он не работает.Он просто копирует исходный столбец, ничего не заменяя.Обратите внимание, что изменение regex = False не влияет на результаты.
dfTest['bar'] = dfTest['foo'].str.replace(str(dfTest['date']), '')
#or (removing .str, gives same result):
#dfTest['bar'] = dfTest['foo'].replace(str(dfTest['date']), '')
Оба результата приведены в таблице ниже (точно так же в 'bar'):
| date | foo | bar
-----------------------------------------------------------
0 | 190225 | 190225-file1_190225 | 190225-file1_190225
1 | 190225 | 190225-file2_190225 | 190225-file2_190225
2 | 190226 | 190226-file3_190226 | 190226-file3_190226
Как удалитьсодержимое столбца даты, но в противном случае сохранить исходные данные?