The first thing to realize is that every single dataset can be described as a collection of items, where each of these items has a number of attributes that describe characteristics of these items. So typically we have, we start from a database or a dataset, there are items that are collected within this dataset, and we have attributes that describe characteristics of these items. Using once again the example of vehicle collisions, every single item in our dataset there is a collision. And every single collision can be described through a number of attributes. Say, for instance, the date of the collision, the location of the collision, the number of people injured, the type of vehicles involved in the collision, and so on. So it's very important to keep in mind, every dataset is a collection of items, and the items are described by attributes. We will keep using this terminology for the rest of the lesson, items and attributes. Now, a first step in data obstruction is to distinguish between two broad classes of dataset types. We have actually already seen these classes previously, but now we are defining them a little bit more formally. The first one is tables and the second one is networks and trees. Let me describe tables first. That's by fat the most common type of data that you find in data visualization projects and in data analysis projects in general. So what is a table? A table is basically a grid or a collection of columns and rows, where every row in the table represents one item, one object of the dataset, and every column represents one attribute of these objects. So an attribute is a characteristic for this object. And typically, every single object, unless some data is missing, has information about all the attributes. And every object has to have, at least hypothetically, all the attributes that are listed in the table, okay? So all the items have the same number of attributes, and the attributes are all, for a given column, all the elements of that column have to be of the same type. The second dataset type is networks and trees. So what are these data types and how do they differ from tables? Well, in networks and trees, the idea is that the defining characteristic of this collection of items is that they are linked together by links. So here we have a collection of items that we call nodes, and these nodes are connected by links, so we have nodes and links. Another interesting aspect of networks is that in networks, we also can have attributes. Attributes associated to nodes and attributes associated to links, as many attributes as you want, in general. But in this specific image, I'm showing a network that comes from a very interesting project developed at MIT to visualize connections of people in your email dataset. So the way this tool works is that it analyzes your own email, if you have a Gmail account, I believe it works only with Gmail, extracts all the addresses in Gmail and finds the connections between all the people, right? So what you see here, every single node is a person or an email address, and the connection between the addressed exists if there is at least one email that contains both of these addresses. You can see that nodes have different sizes, so that's an example of any nodes that have one attribute, sorry. So here the attribute that is associated to node size is the total number of emails that have been sent or received through this account, okay? So in summary, again, we have nodes, we have links that connect nodes. And we can have, in general, attributes that define or describe characteristics of nodes and links. So now let's take a little break, and I want to assign you a very short exercise. Just try to think about two examples of datasets, where one dataset is configured as a table and one dataset is configured as a network.