У меня есть фрейм данных.
df = pd.DataFrame({'a':[1,1,2,2,2], 'b':['x','y','u','w','v']})
Следует выбрать значения столбца b
на основе значения, переданного для столбца a
.Скажем, я хочу выбрать все значения столбца b
для значения 2
в столбце a
и получить следующую строку
There are 3 values for value 2.
1. u
2. w
3. v
Я делаю это, используя цикл for
, как показано ниже:
x = df[df['a']==2]['b'].values
result = "There are {} values for 2.\n".format(len(x))
z = ""
for i, val in enumerate(x):
temp = "{}. {}\n".format(i+1, val)
z += temp
print(result+z)
Вышеупомянутое решение работает, но я ищу более эффективное решение.
Контекст: я создаю ответ чатбота.Поэтому стараемся сократить время отклика
Любые предложения приветствуются.