Oblicz, ile razy słowo pojawia się w kolumnie BigQuery

0

Pytanie

Mam kolumnę z kilkoma długimi wierszami, i muszę policzyć w nim najczęściej używane słowa.

Potrzebuję czegoś, co działa tak https://towardsdatascience.com/very-simple-python-script-for-extracting-most-common-words-from-a-story-1e3570d0b9d0. Przynajmniej część liczenia słów...

I bardzo ważne jest, aby móc dodać do czarnej listy niektóre słowa, aby nie byli.

google-bigquery
2021-11-23 18:33:36
1

Najlepsza odpowiedź

2

Spróbuj następnym proste podejście

with blacklist as (
  select 'with' word union all 
  select 'that' union all
  select 'add more as you see needed'
)
select lower(word) word, count(*) frequency
from data, unnest(regexp_extract_all(col, r'[\w]*')) word
where length(word) > 3  
and word not in (select word from blacklist)
group by word
order by frequency desc     

 
2021-11-23 22:40:30

to nie zadziałało... zwrotów w języku portugalskim, może w tym problem? czy może ja źle wymienił twój kod idk
Murilo

), czarna lista, jak ( Wybierz 'z' Słowo Związek wybierz co Związek wybierz " Dodaj więcej, jak widać potrzeby ) wybierz poniżej(słowo) słowo, count() częstotliwość od t0, unnest(regexp_extract_all(t0.kolumna, p'[\s]')) słowo, w którym długość(słowo) > 3 i słowo nie (wybierz słowo z czarnej listy) grupy kolejność słów w częstotliwości malejąco ///próbowałem to..
Murilo

proszę, bądź bardziej konkretny - co masz na myśli mówiąc "to nie działa"? podaj przykład danych wejściowych. itd......
Mikhail Berlyant

mój błąd, otrzymuję komunikat "żądanie nie dał wyników".
Murilo

nie ma znaczenia, u mnie był błąd w moim pierwotnym zapytaniu, teraz działa dobrze, dziękuję bardzo
Murilo

Dziękuję, że potwierdziły. Cieszę się, że to działa na ciebie. Pomyśl także o tym, aby głosować za odpowiedź, jeśli to pomogło :o)
Mikhail Berlyant

swoją drogą, patrzę na wyniki i kod wycina słowa, które zawierają niektóre "brazylijskie litery", takie jak "Ç", "g", "õ", czy istnieje sposób, aby zmusić go wziąć je pod uwagę. W takim słowie jak "informação", to uważa się za "informacje".
Murilo

oczywiście wykonalne, zaraz sprawdzę. ale tymczasem sprawdź inne moje odpowiedzi, jak radzić sobie z akcentami itp. Musi być co najmniej kilka odpowiedzi związanych z tym :o)
Mikhail Berlyant

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................