Merging and joining data
Pandas allows the merging of pandas objects with database-like join operations, using the pd.merge()
function and the .merge()
method of a DataFrame
object. A merge combines the data of two pandas objects by finding matching values in one or more columns or row indexes. It then returns a new object that represents a combination of the data from both, based on relational-database-like join semantics applied to those values.
Merges are useful as they allow us to model a single DataFrame
for each type of data (one of the rules of having tidy data), but to be able to relate data in different DataFrame
objects using values existing in both sets of data.
Merging data from multiple pandas objects
A practical example of merges would be that of looking up customer names from orders. To demonstrate this in pandas, we will use the following two DataFrame
objects. One represents a list of customer details and the other represents the orders made by the customers and what day the...