У меня есть DataFrame
. 1 столбец (name
) имеет строковые значения. Мне было интересно, есть ли способ выбрать строки на основе частичного совпадения строк с конкретным столбцом, используя метод DataFrame.query()
.
Я пробовал:
-
df.query('name.str.contains("lu")')
. Сообщение об ошибке: "Объекты TypeError:" Series "изменяемы, поэтому их нельзя хэшировать" -
df.query('"lu" in name')
. Возвращает пустойDataFrame
.
Код, который я использую:
import pandas as pd
df = pd.DataFrame({
'name':['blue','red','blue'],
'X1':[96.32,96.01,96.05]
}, columns=['name','X1'])
print(df.query('"lu" in name').head())
print(df.query('name.str.contains("lu")').head())
Я знаю, что могу использовать df[df['name'].str.contains("lu")]
, но я предпочитаю использовать
запрос.