1. Learn
  2. /
  3. Cursuri
  4. /
  5. Wprowadzenie do Spark SQL w Pythonie

Connected

exercițiu

Przekształcanie tekstu do formatu wektorowego

Wiesz już, jak dzielić zdania i przekształcać tablicę słów w wektor numeryczny za pomocą CountVectorizer.

Dostępna jest ramka danych df z następującymi kolumnami: sentence, in i out. Każda kolumna zawiera tablicę ciągów tekstowych. Kolumna sentence to lista słów reprezentujących zdanie z podręcznika. Kolumna out zawiera ostatnie słowo zdania. Kolumna in powstaje przez usunięcie ostatniego słowa z kolumny sentence.

Model CountVectorizer o nazwie model oczekuje ramki danych z kolumną words i tworzy kolumnę vec.

Na początku wykonasz transformację, która dodaje kolumnę invec. Wynik wygląda następująco:

+----------------------+-------+------------------------------------+
|in                    |out    |invec                               |
+----------------------+-------+------------------------------------+
|[then, how, many, are]|[there]|(126,[3,18,28,30],[1.0,1.0,1.0,1.0])|
|[how]                 |[many] |(126,[28],[1.0])                    |
|[i, donot]            |[know] |(126,[15,78],[1.0,1.0])             |
+----------------------+-------+------------------------------------+
only showing top 3 rows

Następnie wykonasz drugą transformację, której wynik wygląda tak:

+------------------------------------+----------------+
|invec                               |outvec          |
+------------------------------------+----------------+
|(126,[3,18,28,30],[1.0,1.0,1.0,1.0])|(126,[11],[1.0])|
|(126,[28],[1.0])                    |(126,[18],[1.0])|
|(126,[15,78],[1.0,1.0])             |(126,[21],[1.0])|
+------------------------------------+----------------+
only showing top 3 rows

Instrucțiuni

100 XP
  • Utwórz ramkę danych o nazwie result, używając model do wywołania transform() na df. Ramka result zawiera kolumny sentence, in, out oraz invec. Kolumna invec to wektorowa reprezentacja kolumny in.
  • Dodaj do ramki result kolumnę outvec. Ramka result zawiera teraz kolumny sentence, in, out, invec i outvec.