© 2017 IEEE.Unmanned aerial vehicles (UAVs) are a promising technology to provide an energy-efficient and cost-effective solution for data collection from ground Internet of Things (IoT) network. In this paper, we analyze the UAV-IoT device associations that provide reliable connections with low communication power and load balance the traffic using analytical techniques from game theory. In particular, to maximize the IoT devices' benefits, a novel framework is proposed to assign them the most suitable UAVs. We formulate the problem as a distributed algorithm that combines notions from matching theory and no-regret learning. First, we develop a many-to-one matching game where UAVs and IoT devices are the players. In this subgame, the players rank one another based on individual utility functions that capture their needs. Each IoT device aims to minimize its transmitting energy while meeting its signal-to-interference-plus-noise-ratio (SINR) requirements, and each UAV seeks to maximize the number of served IoT devices while respecting its energy constraints. Second, a non-cooperative game based on no-regret learning is used to determine each IoT device's regret. Then, UAVs open a window for transfers to the IoT devices. Simulation results show that the proposed approach provides a low average total transmit power, ensures fast data transmission and optimal utilization of the UAVs' bandwidth.