Focusing on the fundamentals of machine learning, this book covers broad areas of data-driven modeling, ranging from simple regression to advanced machine learning and optimization methods for applications in materials modeling and discovery. The book explains complex mathematical concepts in a lucid manner to ensure that readers from different materials domains are able to use these techniques successfully. A unique feature of this book is its hands-on aspect—each method presented herein is accompanied by a code that implements the method in open-source platforms such as Python. This book is thus aimed at graduate students, researchers, and engineers to enable the use of data-driven methods for understanding and accelerating the discovery of novel materials.