Я работаю с большим набором данных (более 2 миллионов строк × 10 столбцов), в котором есть столбец даты. Некоторые строки отформатированы правильно (например, 2020/04/08), но я хочу изменить формат других, которые не (конкретно, они отформатированы как 20200408).
Я хочу изменить формат те, которые ошибочны, но я не хочу перебирать все строки.
Обычно для небольшого набора данных я бы сделал
for i in range (0,len(df)):
cell=str(df.iloc[i]['date'])
if len(cell)==8:
df.iat[i, df.columns.get_loc('date')] = datetime.strptime(cell, '%Y%m%d').strftime('%Y-%m-%d')
, но я знаю, что это далеко не оптимально.
Как я могу использовать силу pandas, чтобы избежать l oop здесь?
Спасибо!