#python
#python
Вопрос:
Я очищаю файл csv с помощью python. Моя цель — найти любые числа, которые не начинаются с 0, и добавить 0 перед номером
пример существующих данных :
Ожидаемый результат: 0 будет добавлено к каждому номеру, который не начинается с 0
Мой текущий код: логика приведенного ниже кода заключается в том, чтобы отфильтровать числа, начинающиеся с 1, а затем добавить 0 перед ним.
Мне удалось добавить ноль в из каждого номера, который не начинается с нуля, но я не могу обновить фрейм данных.
for i in eg1['MOBILENO']:
if re.findall(r'^["1"] ', i):
z = "0" i
print(z)
Комментарии:
1. Пожалуйста, не используйте изображения кода и не предоставляйте (текстовые) примеры кода и данных
2. Пожалуйста, предоставьте (текстовые) примеры кода и данных.
Ответ №1:
Вы можете попробовать следующий пример
df['MOBILENO'] = df['MOBILENO'].apply(lambda x: "0" x if re.findall(r'^["1"] ', x) else x)
Комментарии:
1. Большое вам спасибо. Это работает! . Я также нахожу способы сохранить его непосредственно в df, но вы мне помогли. большое спасибо
2. df.to_csv(‘test.csv», index= False) — вы можете сохранить csv напрямую
Ответ №2:
Я пробовал это, и это сработало, проверьте это один раз.
Отступы были указаны неправильно, проверьте это при вставке кода.
for i in range(len(eg1)):
if eg1.loc[i, 'MOBILENO'][0] != '0':
x.loc[i,'MOBILENO'] = '0' x.loc[i,'MOBILENO']