Come creare un programma Python per l'analisi del sentimento di Twitter? [Tutorial passo dopo passo]
Pubblicato: 2020-08-07Fonte
Poiché le aziende stanno diventando sempre più basate sui dati, una tecnica di Machine Learning chiamata "Sentiment Analysis" sta guadagnando un'immensa popolarità giorno dopo giorno. Analizza i dati/testo digitali attraverso il Natural Language Processing (NLP) per trovare la polarità (positiva, negativa, neutra), i sentimenti e le emozioni (arrabbiata, felice, triste, ecc.) espresse nel testo.
Poiché Twitter è una delle fonti più complete di conversazioni pubbliche dal vivo in tutto il mondo, le aziende, i gruppi politici, ecc. sono interessati a eseguire l'"analisi del sentimento" dei tweet per comprendere le emozioni/opinioni del mercato di riferimento o per studiare il mercato della concorrenza . Sebbene siano pronti per l'uso di programmi allo scopo, ma per ottenere previsioni con un elevato livello di accuratezza, specifici per criteri e domini particolari, il modo migliore è creare un modello o un programma Python personalizzato per l'analisi del sentimento di Twitter .
Sommario
Tutorial passo dopo passo: crea un programma di analisi del sentimento di Twitter utilizzando Python
Questo tutorial mira a creare un programma di analisi del sentimento di Twitter utilizzando Python. Il programma risultante dovrebbe essere in grado di analizzare i tweet recuperati da Twitter e comprendere i sentimenti del testo, come la sua polarità e soggettività.
I Perquisiti
1. In primo piano c'è la conoscenza di base di programmazione/codifica di Python.
2. Strumenti da installare sul tuo computer:

- Pitone
- Librerie: Tweepy, blob di testo, nuvola di parole, panda, NumPy, matplotlib
(Tweepy è la libreria Python ufficiale per l'API di Twitter che consente a Python di comunicare con la piattaforma Twitter)
3. Un account Twitter
4. Un'app Twitter deve essere creata e autenticata da Twitter: questo è necessario per ottenere la "Chiave del consumatore e token di accesso" di cui avrai bisogno nella tua programmazione.
Se non hai già un'app Twitter creata per lo scopo, ecco come crearla.
Leggi di più: Python NumPy Tutorial: impara Python Numpy con esempi
Come creare un'app Twitter?
- Vai al sito degli sviluppatori Twitter: dev.twitter.com.
- Accedi con il tuo account Twitter
- Vai a "Le mie applicazioni"
- Fare clic su "Crea una nuova applicazione".
- Successivamente, è necessario compilare un modulo, come mostrato di seguito.
Fonte
- Quindi, fai clic su "Crea il mio token di accesso".
- Nella pagina successiva, scegli l'opzione "Leggi e scrivi" nella colonna "Tipo di applicazione".
Ti verranno fornite le impostazioni OAuth dell'app Twitter, che includono tutti i dettagli necessari relativi alla chiave del consumatore, al segreto del consumatore, al token di accesso, al segreto del token di accesso, ecc. Devi prendere nota di questi dettagli poiché queste credenziali API ti consentiranno di recuperare i tweet da twitter. Meglio salvarlo in un file CSV nel tuo computer, quest'ultimo puoi caricare direttamente il file CSV nel tuo programma per leggere le credenziali API
Inizia con la creazione del programma Python per l'analisi del sentimento di Twitter
1. Importa le librerie : Tweepy, blob di testo, nuvola di parole, panda, NumPy, matplotlib
2. Autenticare l'app di Twitter: Successivamente, è necessario autenticare l'app di Twitter utilizzando le credenziali delle impostazioni OAuth dell'app di Twitter, denominate anche credenziali dell'API di Twitter. Per questo, è necessario creare un oggetto Autenticazione, utilizzando i codici come mostrato nell'immagine sottostante.
Fonte
Per compilare le credenziali dell'API di Twitter, puoi caricare il file CSV o copiare manualmente e incollare i dettagli delle credenziali.
3. Recupera i tweet dall'utente Twitter: ora, per recuperare i tweet, devi prima scegliere un utente Twitter di cui vuoi analizzare i tweet per capire il sentimento espresso in esso. Diciamo; vuoi vedere se i tweet di "UserXYZ" sono positivi o negativi o neutri eseguendo l'analisi del sentiment dei 100 tweet da parte di UserXYZ.
Codice per recuperare i tweet
posts = api.user_timeline(screen_name = ”UserXYZ”, count= 100, Lang =”en”, tweet_mode=“esteso”)
L'esecuzione del comando precedente mostrerà i tweet.
4. Crea frame di dati: ora devi creare un frame di dati per i tweet che hai recuperato. Diciamo che chiami la prima colonna del tuo df come "Tweet" e conterrà tutti i tweet distribuiti su 100 righe poiché stai analizzando 100 tweet.
Df = pd.dataframe( [tweet.full_text per tweet nei post] , colonne=[ 'Tweet'])
5. Pulisci il testo: la pulizia del testo dei tweet è importante per il successo del tuo programma Python di analisi del sentimento di Twitter, poiché ci saranno molti simboli indesiderati come @, #, re-tweet, collegamenti ipertestuali negli URL, ecc. Qui il tuo La libreria python'' entra in uso.
Ottieni la soggettività e la polarità: dopo aver pulito il testo, è necessario creare due funzioni utilizzando la libreria Python di TextBlob per ottenere la soggettività e la polarità dei tweet. La soggettività mostra quanto sia supponente il testo e la polarità descrive la positività o la negatività del testo. Sarebbe meglio scrivere lo script Python per creare altre due colonne nel frame di dati per ospitare Soggettività e Polarità. Quindi, ora il tuo frame di dati avrà tre colonne (prima per i tweet, 2a per la soggettività, 3a per la polarità)

I codici per la creazione delle funzioni di Soggettività e Polarità sono i seguenti:
Fonte
Dopo aver eseguito il codice, vedrai i punteggi di soggettività e polarità di ogni tweet mostrati nelle rispettive colonne. TextBlob descrive la polarità all'interno di una scala da 1 a -1. Quindi, se un tweet ha una polarità -0,4 significa che è leggermente negativo e se ha una soggettività 0,6, allora è abbastanza soggettivo.
6. Successivamente, puoi scegliere di includere una nuvola di parole nel tuo programma Python di Analisi del sentimento di Twitter , poiché le nuvole di parole sono anche popolari come tecnica di visualizzazione dei dati utilizzata per l'analisi del sentimento, in cui la dimensione delle parole ne indica l'importanza.
Esempio di WordCloud:
Fonte
Le librerie matplotlib, Pandas e WordCloud entreranno in azione che hai già importato. Per tracciare prima una nuvola di parole, devi creare una variabile; chiamiamolo 'allwords' per rappresentare tutti i tweet nella colonna 'Tweet' del frame di dati.
Codice per la creazione di WordCloud
allwords = ' '.join( [twts for twts in df [ 'Tweet' ]] )
WordCloud = WordCloud (larghezza =xxx, altezza =xxx, randon_state =xxx, max_font_size =xxx. generate (tutte le parole)
plt.imshow (wordcloud)
plt.asse ("off")
plt.show()
7. Poiché hai i punteggi di polarità per ogni tweet, puoi iniziare a calcolare l'analisi positiva, negativa e neutra dei tweet. Per questo, devi creare una funzione, chiamiamola "Analisi", in cui puoi assegnare il punteggio 0 a neutro, <0 a negativo e >0 a positivo.
Analisi def (punteggio):
Se punteggio < 0
restituisce 'Negativo.'
punteggio elif == 0
ritorno 'neutro
altro,
restituisce 'positivo.'
Successivamente, per ospitare i risultati dell'analisi del sentiment dei tweet, crea una nuova colonna nel tuo data frame, chiamiamola 'TwtAnalysis' e poi scrivi il seguente codice:
df [ 'TwtAnalysis' ] = df [ 'Polarità' ]. applicare (Analisi)
8. Il nuovo frame di dati avrà la colonna aggiunta denominata "TwtAnalysis" e farà riferimento a ciascun tweet come positivo, negativo o neutro in base al suo punteggio di polarità. Un esempio è mostrato sotto nell'immagine:
Fonte

9. Dopo aver classificato i tweet come positivi, negativi e neutri, puoi continuare a creare il tuo programma Python di Twitter Sentiment Analysis per rappresentare i dati in diversi formati quali:
- Ottieni la percentuale di tweet positivi, negativi o neutri.
- Stampa tutti i commenti positivi o i tweet negativi o neutri separatamente
- Crea un grafico di analisi del sentimento visivo dei tweet positivi, negativi e neutri e molto altro.
Leggi anche: Le 9 migliori librerie Python per l'apprendimento automatico
Conclusione
Il programma Python di Twitter Sentiment Analysis , spiegato in questo articolo, è solo uno modo per creare un programma del genere. Lo sviluppatore può personalizzare il programma in molti modi in base alle specifiche per ottenere la massima accuratezza nella lettura dei dati, questo è il bello di programmarlo tramite python, che è un ottimo linguaggio, supportato da una comunità attiva di sviluppatori e da troppe librerie.
Python ha una portata immensa nello spazio di Machine Learning e Data Science. Coloro che si occupano di programmazione da un po' sanno bene che il Machine Learning continuerà a essere una delle innovazioni nel futuro della programmazione.
Se vuoi ottenere un'esperienza di apprendimento completa e strutturata, anche se sei interessato a saperne di più sull'apprendimento automatico, dai un'occhiata al Diploma PG di IIIT-B e upGrad in Machine Learning e AI, progettato per i professionisti che lavorano e offre oltre 450 ore di formazione rigorosa, oltre 30 casi di studio e incarichi, stato di Alumni IIIT-B, oltre 5 progetti pratici pratici e assistenza sul lavoro con le migliori aziende.
Qual è l'importanza funzionale dell'analisi del sentimento sui social media?
Nell'era dei social media, le opinioni dei consumatori hanno un potere infinito per creare o distruggere un marchio. L'analisi del sentimento è il modo migliore per comprendere in modo accurato i fattori trainanti dietro le opinioni e le emozioni dei consumatori. Con i dati disponibili dall'analisi del sentiment, le aziende possono trovare il loro pubblico di destinazione, identificare gli influencer dei social media per il loro marchio e individuare le tendenze emergenti del mercato. Inoltre, l'analisi del sentiment sulle piattaforme dei social media offre anche un'idea completa della salute del loro marchio; le aziende possono ricevere un feedback onesto dei consumatori sui loro prodotti e servizi appena lanciati per migliorare in seguito. È anche efficace nella gestione della reputazione online identificando meglio gli ambiti di miglioramento e la risoluzione dei problemi.
Puoi imparare Python da solo?
Se hai un certo livello di esperienza con la programmazione, puoi sicuramente iniziare ad imparare Python da solo. Python viene fornito con una struttura sintattica relativamente semplice ed è anche intuitivo, rendendolo facile da capire anche per i principianti. Inoltre, è facile installare il pacchetto ed eseguirlo sulla tua macchina da qualsiasi luogo. Puoi accelerare il tuo apprendimento iscrivendoti a corsi Python, frequentando bootcamp di codifica. Con una comunità di sviluppatori attiva che è sempre disposta ad estendere il supporto, un'abbondanza di risorse di apprendimento e documentazione, i principianti possono apprendere i fondamenti di Python in circa 7-8 settimane.
Quale è più difficile da imparare tra Python e C++?
Python e C++ sono linguaggi di programmazione completamente diversi con comportamenti e caratteristiche completamente diversi. Tuttavia, entrambi supportano fortemente la programmazione orientata agli oggetti. Ma considerando il framework Python generale, è semplice, molto più facile e veloce da imparare rispetto a C++. In effetti, molte persone imparano Python per sperimentare come si sente la semplice codifica. Python è open source, gratuito e offre un'affidabilità e una facilità straordinarie quando si tratta di sviluppare applicazioni complesse di machine learning. Sebbene C++ sia più efficiente in termini di prestazioni, non è considerato adatto su Python per progetti di apprendimento automatico.