Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 20, 2020 20:34:37

liker
Зарегистрирован: 2020-09-20
Сообщения: 2
Репутация: +  -1  -
Профиль   Отправить e-mail  

Pandas. Как реализовать группировку в условии.

Есть csv с ключевыми словами. Грузим в датафрейм. Нужно отфильтровать такие записи, чтобы обязательно было "погода в“ и обязательно что-то из (”Новосибирске“ OR ”Москве“ OR ”Краснодаре").



stats = pd.read_csv('/content/drive/My Drive/stats.csv')

stats=''

def Weather(row):
if ‘погода в’ and (' Новосибирске'or ‘ Москве’or ‘ Краснодаре)’) in row:
row='yes

stats.apply(Weather,axis=1)

Отредактировано liker (Сен. 20, 2020 20:35:20)

Прикреплённый файлы:
attachment stats.csv (74,1 KБ)

Офлайн

#2 Сен. 21, 2020 06:42:30

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9716
Репутация: +  842  -
Профиль   Отправить e-mail  

Pandas. Как реализовать группировку в условии.

liker
 if 'погода в' and (' Новосибирске'or ' Москве'or ' Краснодаре)') in row:
Изучай питон. Ошибка на примитивнейшем уровне. Не знаешь синтаксис питона.

Обычно такая проверка делается так:
  
>>> string = 'a'
>>> ('a' in string) and any(i in string for i in ('b', 'c', 'd'))
False
>>> 
>>> string = 'b'
>>> ('a' in string) and any(i in string for i in ('b', 'c', 'd'))
False
>>> 
>>> string = 'ac'
>>> ('a' in string) and any(i in string for i in ('b', 'c', 'd'))
True
>>> 
>>> string = 'abc'
>>> ('a' in string) and any(i in string for i in ('b', 'c', 'd'))
True
>>>



Офлайн

#3 Сен. 22, 2020 16:01:22

liker
Зарегистрирован: 2020-09-20
Сообщения: 2
Репутация: +  -1  -
Профиль   Отправить e-mail  

Pandas. Как реализовать группировку в условии.


Все проще. Показываю:

 def Weather(row):
  if 'погода в' in row['keyword']:
                     
     for i in  ['новосибирске', 'москве', 'котельниково'] :
    
       if i in row['keyword']:
        
           row['is']='yes'
           break
       else:
           row['is']=''
  return row

Отредактировано liker (Сен. 22, 2020 16:02:06)

Офлайн

#4 Сен. 22, 2020 19:12:25

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9716
Репутация: +  842  -
Профиль   Отправить e-mail  

Pandas. Как реализовать группировку в условии.

liker
Все проще. Показываю:
 
def Weather(row):
if 'погода в' in row['keyword']:

for i in ['новосибирске', 'москве', 'котельниково'] :

if i in row['keyword']:

row['is']='yes'
break
else:
row['is']=''
return row
Дебильный код. Что ещё сказать.

Учи питон, чтобы просто дураком не выставлять себя на всеобщее обозрение.



Отредактировано py.user.next (Сен. 22, 2020 19:13:04)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version