У меня есть dataframe DF
, который выглядит следующим образом (это пример):Как удалить все после последнего появления символа в Dataframe?
EQ1 EQ2 EQ3
0 Apple.fruit Oranage.eatable.fruit NaN
1 Pear.eatable.fruit Banana.fruit NaN
2 Orange.fruit Tomato.eatable Potato.eatable.vegetable
3 Kiwi.eatable Pear.fruit Cabbage.vegetable
<And so on.. It is a large Dataframe>
Я хотел бы, чтобы удалить все ПОСЛЕ ПОСЛЕДНЕГО вхождение точки .
в каждом элементе DF
и сохраните его под другое имя, скажем df_temp
.
Желаемая Ouput:
EQ1 EQ2 EQ3
0 Apple Oranage.eatable NaN
1 Pear.eatable Banana NaN
2 Orange Tomato Potato.eatable
3 Kiwi Pear Cabbage
<And so on>
Это то, что я пытался: df_temp=".".join(DF.split(".")[:-1])
.
К сожалению, это, похоже, работает только со строками, а не с Dataframe. Нужно ли мне немного подстроить эту строку для достижения того, чего я хочу? Кто-то, пожалуйста, помогите!
Не стоит отдельный ответ, но 'df.apply (лямбда х: x.str.rsplit (» ., 1) .str [0]) 'должен делать то же самое. – DSM
Спасибо большое @ Mr.F работает! – controlfreak