1
import pandas as pd
df= pd.DataFrame({'date':[1,2,3,4,5,1,2,3,4,5,1,2,3,4,5],
'name':list('aaaaabbbbbccccc'),
'v1':[10,20,30,40,50,10,20,30,40,50,10,20,30,40,50],
'v2':[10,20,30,40,50,10,20,30,40,50,10,20,30,40,50],
'v3':[10,20,30,40,50,10,20,30,40,50,10,20,30,40,50]})
a= list(set(list(df.name)))
plus=[]
for i in a:
sep=df[df.name==i]
sep2=sep[(sep.v1>=10)&(sep.v2>=20)&(sep.v3<=40)]
plus.append(sep2)
result=pd.concat(plus)
print(result)
Я знаю, что это не очень хороший пример в любом случае,Как я могу извлечь данные с помощью «» GroupBy
Я хотел бы обрабатывать отдельно по имени.
Это занимает слишком много времени в большом данных
Как я могу извлечь данные с помощью «GroupBy»?
Даже лучше, если функция используется (def..apply ...)
df.groupby(['name'])(df['v1']>20)
... ???? Он не может работать ...