Мне нужна помощь.
Допустим, у меня есть следующий кадр данных под названием venues_df
У меня также есть эта функция: return_most_common_venues
def return_most_common_venues(row, 4):
# Selects the row values
row_values = row.iloc[1:]
# Sorts the selected row values
row_values_sorted = row_values.sort_values(ascending=False)
# Returns the column name of the first 4 sorted values
return row_values_sorted.index.values[0:4]
Если я применю свою функцию к первой строке:
return_most_common_venues(venues_df.iloc[0, :], 4)
Результатом будет массив (ниже таблицы приведены для иллюстрации):
массив (['Bar', 'Restaurant', 'Park', 'Gym'])
Проблема в том, что я применяю свою функцию ко второму ряду.
return_most_common_venues(venues_df.iloc[1, :], 4)
Я получу массив
(['Park', 'Restaurant', 'Gym', 'SuperMarket'])
Мне нужно, чтобы он возвратил:
массив (['Bar') , 'Restaurant', 'Not Available', 'Not Available'])
Если значение равно нулю, мне нужно вернуть «Not Available» вместо имен столбцов «Gym» и «SuperMarket» '
Как я могу изменить свою функцию так, чтобы она возвращала то, что мне нужно?
Спасибо за ваше помогите!
Эфрен