This paper proposes a data-driven dynamic adaptive replacement policy for units subject to heterogeneous degradation. A Wiener process with random drift parameter is used to model the heterogeneous degradation. For each individual unit, the real-time degradation data contain the useful information about its unique degradation pattern. Thus the real-time degradation data of an operating unit is used to dynamically estimate the posteriori distribution of its drift parameter and further update its remaining useful life (RUL) distribution. With the real-time RUL distribution, a cost model is developed based on the one-cycle criterion, aiming at minimum expected cost per unit of time for the cycle of the operating unit. The failure rate from the RUL distribution is proven to non-monotonic, first increasing and then decreasing. The monotonicity of the cost function under such a failure rate is analyzed, based on which the optimal preventive replacement (PR) interval is derived analytically. The cost function changes dynamically with the updating of RUL predictions and thus enables the replacement plan to be adaptively revised. The effectiveness and advantages of the proposed policy are illustrated through a simulation study and a practical case study.