Наиболее типичным способом обработки нечисловых данных является преобразование одного столбца в несколько двоичных столбцов. Это называется «получение фиктивных переменных» или «горячая кодировка» (среди многих других терминов сноба).
Существуют и другие способы преобразования данных в числа, например, анализ настроений (т. Е. Очищать каждый твит в счастливый, грустный, смешной, злой и т. Д. c ...), анализировать твиты, чтобы определить, имеют ли они отношение к определенному предмету или нет (т. Е. Говорит ли этот твит о вирусе? ), количество слов в каждом твите, количество пробелов в твите, если у него хорошая грамматика или нет, и т. д. c. Как видите, вы спрашиваете об очень широкой теме.
При преобразовании данных в двоичные столбцы вы получаете количество уникальных значений в столбце и задаете столько новых столбцов, каждый из которых заполняется нули и единицы.
Давайте сосредоточимся на вашем первом столбце:
import pandas as pd
df = pd.DataFrame({'account':['realdonaldtrump','naredramodi','pontifex','pmoindia','potus']})
account
0 realdonaldtrump
1 narendramodi
2 pontifex
3 pmoindia
4 potus
Это эквивалентно:
pd.get_dummies(df, columns=['account'], prefix='account')
account_naredramodi account_pmoindia account_pontifex account_potus \
0 0 0 0 0
1 1 0 0 0
2 0 0 1 0
3 0 1 0 0
4 0 0 0 1
account_realdonaldtrump
0 1
1 0
2 0
3 0
4 0
Это один из многих методов. Вы можете проверить эту статью о одном горячем кодировании здесь .
ПРИМЕЧАНИЕ : если у вас много уникальных значений, это даст вам много столбцов, а некоторые алгоритмы cra sh из-за нехватки степеней свободы (слишком много переменных, недостаточно наблюдений). Наконец, если вы используете регрессию, вы столкнетесь с идеальной мультиколлинеарностью, если не отбросите один из столбцов.
Возвращаясь к вашему примеру, если вы хотите превратить все свои столбцы в данные такого рода попробуйте:
pd.get_dummies(df)
Однако я бы не стал этого делать для столбца tweet
, поскольку каждый твит имеет свое уникальное значение.