Эти коды выглядят правильно, но для меня это ужасно.Улучшение скорости/оптимизация этого кода
В обоих случаях я имею дело с 78k строк данных. Мне удалось уменьшить столбцы до 2-4, чтобы упростить код. Здесь я оставляю только первую и вторую колонки и пытаюсь заменить третий столбец на производную. Я хотел бы сделать это ежемесячно до изменения projíd, сообщая код
for j in range (1,len(joined)):
if joined['ProjID'][j] == joined['ProjID'][j-1]:
joined.loc[j]=[joined.ProjID[j], joined.Month[j], (askingrent[j]-askingrent[j-1])/askingrent[j-1]]
else:
joined.loc[j]=[joined.ProjID[j], joined.Month[j], 0]
Здесь, я 78k строк снова. Но я пытаюсь просто преобразовать столбец в datetime и удалить время (часы и минуты). Код выглядит достаточно простым; но я ждал 30 минут ~ иш. Является ли скорость, относящаяся к коду или что-то еще?
ageofbuildings['Month']=pd.to_datetime(ageofbuildings['Month'])
for i in range (0, len(ageofbuildings)):
ageofbuildings.Month[i]=ageofbuildings.Month[i].date()
спасибо! Я закончил преобразование из панд в списки списков и сделал мои вычисления как таковые. –