A critical challenge in many modern scientific disciplines is deriving governing equations and forecasting models from data where derivation from first principals is intractable. The problem of learning dynamics from data is complicated when data is corrupted by noise, when only partial or indirect knowledge of the state is available, when dynamics exhibit parametric dependencies, or when only small volumes of data are available. In this talk I will discuss several methods for constructing models of dynamical systems from data including sparse identification for ordinary differential equations, sparse identification for partial differential equations with or without parametric dependencies, and approximation of dynamical systems governing equations using neural networks. Limitations of each approach and future research directions will be discussed.