Самый быстрый способ присвоить значение ячейке панды - PullRequest
0 голосов
/ 20 сентября 2018

У меня есть функция с именем calculate_distance, которая принимает 4 ячейки Панд в качестве входных данных и возвращает новое значение, которое я хочу присвоить определенной ячейке Панд.4 входных значения изменяются динамически, как видно из кода ниже.

df['distance'] = ''
for i in range(1, df.shape[0]):
   df.at[i, 'distance'] = calculate_distance(df['latitude'].iloc[i-1], df['longitude'].iloc[i-1], df['latitude'].iloc[i], df['longitude'].iloc[i])

Есть ли более быстрый способ сделать это, чем этот цикл для новичка for?

1 Ответ

0 голосов
/ 20 сентября 2018

Вы можете использовать

df['distance'] = df.apply(your_calculate_distance_def, axis=1)

Это быстрее, чем цикл.Я не знаю, что делает твое определение.Но применение поможет вам повысить скорость.

Вы можете обратиться к документации по применению Pandas здесь для получения дополнительной помощи - pandas.DataFrame.apply

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...