
Extract and analyze LinkedIn data using API and CSP files; visualize connections, messages, and locations with NLP, clustering, and Google Colab explorations.
Plan of attack outlines extracting data from LinkedIn profiles with the Link View API and CSV files. Create three datasets: connections, invitations, and messages for data science and NLP.
Create a LinkedIn app to access profile data and prepare for data analysis, including verification, URL generation, and using the client IDs and secrets with Python.
demonstrates building a LinkedIn API workflow in Google Colab with Python, including client ID and secret handling, redirect URI, CSRF token, and an authorization URL to access basic profile data.
Learn how to authenticate with the LinkedIn API using the authorization code flow, obtain an access token, and fetch basic profile fields such as localized first name and last name.
Learn to obtain LinkedIn data by exporting CSV files for connections, invitations, and messages, and prepare these three datasets for data science techniques in upcoming lectures.
Load the connections dataset from csv, drop email, remove rows with missing first or last name, company, or position, and create a full name by joining first and last names.
Load the invitations dataset, examine its structure and shape (259 rows, five columns), and filter to incoming invitations to analyze who connects with your profile and their messages.
Finish loading and filtering the invitations dataset; map full names to company names from the connections dataset, producing an invitations file with sender companies saved as csv.
Generate fake names for LinkedIn connections using faker to preserve privacy, drop the first, last, and full names, and save the updated connections dataset with company, position, and date.
Load and preprocess the LinkedIn messages dataset, inspect fields like conversation id, sender, recipient, date, subject, and content, drop empty messages, and save the cleaned content for analysis.
Analyze LinkedIn data by mapping connections and invitations, building dynamic graphs of new requests, cluster people by companies and job titles, and visualize with Google Earth.
Explore the connections dataset and learn to compute connections by period, transform date formats, and visualize results with dynamic graphs grouped by date.
Group LinkedIn connections by month and by year, create a set month function, and add a connected month column to visualize monthly and yearly trends with a graph.
Analyze LinkedIn company data by counting unique companies and employee counts, using histograms and treemaps to visualize company attributes and positions.
Explore positions data by counting unique positions, visualize with histogram and three-map graphs, and group similar positions to improve clarity.
Discover how Levenshtein distance measures string similarity by counting insertions, deletions, and replacements to cluster job titles and compare LinkedIn profiles using Python's Levenshtein library.
learn n-gram similarity by building b-grams from strings, padding and counting shared grams, and implementing Python code to compare job titles like business intelligence analyst and data scientist.
Explore the Jaccard distance as a set-based similarity measure using intersection and union, with step-by-step implementation and practical text and computer vision examples.
Apply the Jack Card's distance to cluster job titles by string similarity. Test with a small pandas data frame containing English and Portuguese titles to group similar positions.
Cluster similar LinkedIn job positions by calculating string similarity and applying a mean distance threshold, building a dictionary of clusters and filtering single-element groups.
Apply the previous clustering code to the full LinkedIn connections dataset, recreate the positions variable, and explore clusters using order distance calculations, the anagram distance, and living standard distance.
Cluster similar positions into 331 groups from LinkedIn data and link each position to its users by building a cluster contacts dictionary and mapping names through connections.
Explore visualizing clusters in LinkedIn data by extracting common terms across positions, joining position lists, and displaying connected people for clearer cluster insights.
Export and analyze json data from LinkedIn, creating a json file of groups, clusters, and people, then load and prepare the data for visualizations like a dendrobium and a tree.
Visualize data with a dendrogram, adapting code for Google Colab, and govern cluster count and label length to reveal group structures like analysts, consultants, and founders.
Visualize a LinkedIn-like graph using alternative visualizations, highlighting clusters such as technical directors and founders. The code, based on mining this social web, is adapted to run in Google Colab.
Learn to infer LinkedIn contact locations by company name with the Google Location API, and set up a Google Cloud project, enable the API, and manage billing and API keys.
Explore the Google location API to geocode company names into latitudes and longitudes, validating locations across countries, with library installation and an API key workflow.
Extract latitude and longitude for all contacts in the datasets by looping through entries and using the Google API to fetch coordinates, saving results to a connections location file.
Visualize LinkedIn connections by plotting latitude and longitude on a basemap, creating a heat map and points to reveal geographic distribution and regional concentration.
Mine and analyze LinkedIn data by deriving country and city names from latitude and longitude with a reverse geocoder, enriching the dataset and generating graphs.
Generate and visualize graphs of contacts by country and city using histogram and map plots, filter to specific regions, and inspect positions and names for insights.
Explore clustering, a machine learning technique for grouping customers, texts, products, and social profiles by shared features, enabling market segmentation, topic discovery, and personalized recommendations.
Explore the k-means algorithm by clustering age and salary into three clusters using random initial centers, assigning points to the nearest center, and updating centroids as cluster means.
Apply k-means clustering to LinkedIn users by latitude and longitude, using Python and scikit-learn to identify regional patterns and visualize clusters in maps.
Learn to visualize LinkedIn contact data in Google Earth by generating KML files and applying k-means clustering to map 15 clusters across global regions.
Explore the invitations dataset by loading data into google colab, cleaning columns, adding geolocation attributes (latitudes, longitudes) and deriving country and city, and filtering to incoming invitations.
Fill in latitude and longitude, derive country and city for the invitations dataset using Google geocoding and reverse geocoding, then save the final data frame.
Analyze the invitations dataset to generate graphs, group data by country and city, and compare incoming invitations with the connections dataset to reveal which companies connect to your profile.
Plan of attack outlines analyzing LinkedIn text messages using natural language processing, covering preprocessing (lowercasing, removing links and HTML), stop words, spaCy named entity extraction, word clouds, and sentiment analysis.
Load the messages dataset, inspect the inbox (single-column text) between me and other users, identify duplicates, and prepare for pre-processing by dropping extra attributes and examining basic statistics.
Learn to preprocess texts for nlp by converting to lowercase, removing html codes and links. Apply stop-word removal and tokenization to produce clean, analyzable data.
Apply the preprocessing function to all messages, convert text to lowercase, and remove English stop words. Count words and filter texts to at least five words for reliable sentiment analysis.
Detect languages in text data and tailor sentiment analysis with language-specific classifiers. Use language packages for Portuguese, English, Spanish, and French and visualize results with word clouds.
Visualize the most frequent terms from LinkedIn data by concatenating texts and generating a word cloud, illustrating frequency with term size.
Explore named entity recognition to extract organizations, people, dates, and locations from LinkedIn data, with hands-on Python coding to filter GPE locations and visualize results.
Explore sentiment analysis on LinkedIn data using a sentiment density analyzer and Vader lexicon, computing polarity scores to classify messages as positive, neutral, or negative, and visualize results.
Recap three LinkedIn datasets: connections, invitations, and messages, and explore data science, graphs, a location API, and NLP techniques.
Explore practical artificial intelligence and data science topics with AI Expert Academy online courses, featuring monthly new content, membership access, and certificates for topics like machine learning and deep learning.
LinkedIn is a social network focused on professional experience in order to generate connections and relationships between professionals from different areas. Professionals can provide profissional skills and search for jobs by connecting with people around the world. For example, if you would like to work with Data Science you can connect with companies and people who work in this field, increasing your chances of getting a job. On the other hand, companies are able to search for candidates according to the curriculum and skills provided by users. In 2017, LinkedIn established itself as the largest business platform and an important strategic tool for both professionals and companies.
It is important that professionals know how to use the data of this social network in their favor. LinkedIn provides some datasets related to your profile, in which it is possible to apply Data Science and Analysis techniques to extract important and interesting insights about our network of connections. We can answer questions like this: What are the main positions of the people who are connected to us? Which companies are sending invitations to our profile? What is the location of our contacts? Is our LinkedIn network made up of people and companies related to our job? Are the companies I want to work for sending invitations to my profile? These and other questions can be answered during this course, so you can analyze if your network is in line with what you want professionally. Below you can see the main topics that will be implemented step by step:
Extract data from your LinkedIn profile using the LinkedIn API and .csv files. If you do not have LinkedIn, you will be able to follow the course using the data about my profile
Extract and analyze connections between users, invitations and text messages
Generate fake data to mask real information
Explore and visualize data related to your contacts' companies and job titles
Use Levenshtein distance, n-gram similarity and Jaccard distance to measure similarity between strings
Cluster contacts based on similarity between positions, as well as generate HTML views to improve data presentation
Use location APIs to extract latitude and longitude of contacts to capture the city and country they live
View the location of contacts dynamically with Google Earth and the Basemap library
Cluster contacts using k-means algorithm
Apply natural language processing techniques to analyze your LinkedIn text messages
Generate word cloud to view the most frequent terms
Extract named entities from your text messages
Create a sentiment classifier to extract the polarity from LinkedIn messages
During the course, we will use the Python programming language and Google Colab, so you do not need to spend time installing the stuff on your own machine. You will be able to follow the course with a browser and an Internet connection! This is the best course if this is your first contact with social media data analysis!