#python #dataframe #for-loop #casting
#питон #фрейм данных #для цикла #Кастинг
Вопрос:
У меня есть фрейм данных с несколькими столбцами. Моя цель — определенным образом манипулировать последним столбцом. До сих пор последний столбец имеет тип string . Мне нужна помощь в создании цикла for, который проходит по последнему столбцу и удаляет последние два символа, а затем преобразует его в число с плавающей запятой.
Примером записи в последнем столбце является «1234.5678;;». Я хочу, чтобы он выглядел как 1234.5678 и так для каждой записи в последнем столбце.
Заранее спасибо.
Ответ №1:
Я не уверен, о чем именно вы спрашиваете, вы спрашиваете, как вы можете манипулировать строкой, чтобы удалить последние два символа? Или вы спрашиваете, как вы получаете доступ (и редактируете / изменяете) фрейм данных? Если да, используете ли вы pandas?
Разъяснение этого может помочь другим людям более эффективно помочь вам с вашей проблемой.
В python для любой строки вы можете отрезать последние два символа следующим образом:
string=string[:-2]
Я предполагаю, что переменная string содержит нужную вам строку.
На будущее было бы весьма признателен, если бы вы объяснили свою проблему более подробно, объяснили, что вы хотите сделать и где вам нужна помощь, и в целом приложили больше усилий к вашему вопросу, орфографическая ошибка в названии не очень хорошо смотрится с точки зрения оптики.
Ответ №2:
Когда вы используете фрейм данных pandas, вы можете сделать это следующим образом:
w.iloc[:][w.columns.size-1]=w.iloc[:][w.columns.size-1].str.replace(";;","")
w
это ваш фрейм данных. Эта строка заменит все ;
в столбце. Я предполагаю, что последние два символа всегда следуют одному и тому же шаблону. Очевидно, что это не сработает, если последние два символа следуют неизвестному шаблону.
Комментарии:
1. Большое спасибо! Я смог реализовать цикл for. У меня все еще остался небольшой вопрос. В заголовке последнего столбца также есть два «;;» в конце, которые я хочу удалить. Как я могу это сделать, чтобы имя было постоянным, а не просто копией?
2. Взгляните на pandas. Фрейм данных.переименовать. Есть примеры того, как вы можете переименовать столбец. Для чего вы используете a
for
-loop?3. Я использовал цикл для просмотра столбца фрейма данных, чтобы удалить два «;;» после каждой записи.