Я нахожусь в затруднении с проблемой. У меня есть большой фрейм данных, где два столбца похожи на это:
pd.DataFrame([['a', 'https://gofundme.com/ydvmve-surgery-for-jax,https://twitter.com/dog_rates/status/890971913173991426/photo/1'], ['b','https://twitter.com/dog_rates/status/890971913173991426/photo/1,https://twitter.com/dog_rates/status/890971913173991426/photo/1'],['c','https://twitter.com/dog_rates/status/890971913173991430/video/1'] ],columns=['ID','URLs'])
То, что я пытаюсь сделать, это оставить только URL, включающий слово «twitter», оставленное в каждой ячейке, и удалить остальные. Шаблон заключается в том, что URL-адреса, которые я хочу, всегда включают слово «twitter» и оканчиваются на «/» + однозначное число. В тех случаях, когда в одной и той же ячейке есть два одинаковых URL-адреса, должен остаться только один. Как это:
Test2 = pd.DataFrame([['a', 'https://twitter.com/dog_rates/status/890971913173991426/photo/1'],
['b','https://twitter.com/dog_rates/status/890971913173991426/photo/1'],
['c','https://twitter.com/dog_rates/status/890971913173991430/video/1'] ],columns=['ID','URLs'])
Test2
Я новичок в Python, и после долгих поисков я начал понимать, что ответом является нечто, называемое регулярным выражением, но это все, что я понял. Одна из публикаций здесь, в Stackoverflow, привела меня на regex101.com, и после того, как я поэкспериментировал с этим, я дошел до того, что он не работает:
r’^[https]+(:)(//)(.*?)(/)(\d)’
Может кто-нибудь сказать мне, как решить эту проблему?
Заранее спасибо.