DOI: 10.5281/zenodo.5225338
title: A study on real graphs of fake news spreading on Twitter

description: *** Fake News on Twitter ***


These 5 datasets are the results of an empirical study on the spreading process of newly fake news on Twitter. Particularly, we have focused on those fake news which have given rise to a truth spreading simultaneously against them. The story of each fake news is as follow:


1- FN1: A Muslim waitress refused to seat a church group at a restaurant, claiming "religious freedom" allowed her to do so.


2- FN2: Actor Denzel Washington said electing President Trump saved the U.S. from becoming an "Orwellian police state."


3- FN3: Joy Behar of "The View" sent a crass tweet about a fatal fire in Trump Tower.


4- FN4: The animated children's program 'VeggieTales' introduced a cannabis character in August 2018.


5- FN5: In September 2018, the University of Alabama football program ended its uniform contract with Nike, in response to Nike's endorsement deal with Colin Kaepernick.


The data collection has been done in two stages that each provided a new dataset: 1- attaining Dataset of Diffusion (DD) that includes information of fake news/truth tweets and retweets 2- Query of neighbors for spreaders of tweets that provides us with Dataset of Graph (DG). 


DD 


DD for each fake news story is an excel file, named FNx_DD where x is the number of fake news, and has the following structure:


The structure of excel files for each dataset is as follow:



	
Each row belongs to one captured tweet/retweet related to the rumor, and each column of the dataset presents a specific information about the tweet/retweet. These columns from left to right present the following information about the tweet/retweet: 
	
User ID (user who has posted the current tweet/retweet)
	
The number of published tweet/retweet by the user at the time of posting the current tweet/retweet
	
Language of the tweet/retweet
	
Number of followers 
	
Number of followings (friends)
	
Date and time of posting the current tweet/retweet
	
Number of like (favorite) the current tweet had been acquired before crawling it
	
Number of times the current tweet had been retweeted before crawling it
	
Is there any other tweet inside of the current tweet/retweet (for example this happens when the current tweet is a quote or reply or retweet)
	
The source (OS) of device by which the current tweet/retweet was posted
	
Tweet/Retweet ID
	
Retweet ID (if the post is a retweet then this feature gives the ID of the tweet that is retweeted by the current post)
	
Quote ID (if the post is a quote then this feature gives the ID of the tweet that is quoted by the current post)
	
Reply ID (if the post is a reply then this feature gives the ID of the tweet that is replied by the current post)
	
Frequency of tweet occurrences which means the number of times the current tweet is repeated in the dataset (for example the number of times that a tweet exists in the dataset in the form of retweet posted by others)
	
State of the tweet which can be one of the following forms (achieved by an agreement between the annotators):




	
r : The tweet/retweet is a fake news post
	
a : The tweet/retweet is a truth post
	
q : The tweet/retweet is a question about the fake news, however neither confirm nor deny it
	
n : The tweet/retweet is not related to the fake news (even though it contains the queries related to the rumor, but does   not refer to the given fake news)



 


DG


DG for each fake news contains two files:



	
A file in graph format (.graph) which includes the information of graph such as who is linked to whom. (This file named FNx_DG.graph, where x is the number of fake news)
	
A file in Jsonl format (.jsonl) which includes the real user IDs of nodes in the graph file. (This file named FNx_Labels.jsonl, where x is the number of fake news)



Because in the graph file, the label of each node is the number of its entrance in the graph. For example if node with user ID 12345637 be the first node which has been entered into the graph file then its label in the graph is 0 and its real ID (12345637) would be at the row number 1 (because the row number 0 belongs to column labels) in the jsonl file and so on other node IDs would be at the next rows of the file (each row corresponds to 1 user id). Therefore, if we want to know for example what the user id of node 200 (labeled 200 in the graph) is, then in jsonl file we should look at row number 202.


 


The user IDs of spreaders in DG (those who have had a post in DD) would be available in DD to get extra information about them and their tweet/retweet. The other user IDs in DG are the neighbors of these spreaders and might not exist in DD.