An apparatus for compensating for a current ripple of a single phase inverter, the apparatus comprising: a current sensor that is configured to sense a direct current that is input to the inverter and an alternating current that is output from the inverter; a coordinate converter that is configured to convert a single-phase alternating current that is sensed by the current sensor and an alternating current obtained by shifting the single-phase alternating current by 90° into an i oD and an i oQ component of a synchronous coordinate system (i oD, i oQ); a ripple extractor that is configured to extract at least one ripple by using the direct current that is sensed by the current sensor and the alternating current of the synchronous coordinate system that is obtained by the coordinate converter, wherein the ripple extractor comprises a first ripple extractor that is configured to extract a first ripple from the direct current that is sensed by the current sensor, and is configured to convert the extracted first ripple and a ripple obtained by shifting the extracted first ripple by 90° into an I DC_signal_d component and an I DC_signal_q component of a synchronous coordinate system (I DC_signal_q, I DC_signal_q), a second ripple extractor that is configured to extract a second ripple from the i oD component and is configured to convert the extracted second ripple and a ripple obtained by shifting the extracted second ripple by 90° into an I oD_signal_q component and an I oD_Signal_d component of a synchronous coordinate system (I oD_signal_q, I oD_signal_d), and a third ripple extractor that is configured to extract a third ripple from the I oQ component of the synchronous coordinate system, and is configured to convert the extracted third ripple and a ripple obtained by shifting the extracted third ripple by 90° into an I oD_signal_q component and an I oD_signal_d component of a synchronous coordinate system (I oD_signal_q, I oQ_signal_d); a compensation value generator that is configured to generate a compensation value based on the at least one ripple that is extracted by the first ripple extractor, wherein the compensation value generator is configured to generate a first axis voltage (V * c_comp_d) and a second axis voltage (V * c_comp_q) as the compensation value based on the components of the first ripple extractor (I DC_signal_q, I DC_signal_q) and either the components of the second ripple extractor (I oD_signal_q, I oD_signal_d) or the components of the third ripple extractor (I oQ_signal_q, I oQ_signal_d); and a ripple compensator that is configured to remove the current ripple of the inverter by using the compensation value that is generated by the compensation value generator. a current sensor that is configured to sense a direct current that is input to the inverter and an alternating current that is output from the inverter; a coordinate converter that is configured to convert a single-phase alternating current that is sensed by the current sensor and an alternating current obtained by shifting the single-phase alternating current by 90° into an i oD and an i oQ component of a synchronous coordinate system (i oD, i oQ); a ripple extractor that is configured to extract at least one ripple by using the direct current that is sensed by the current sensor and the alternating current of the synchronous coordinate system that is obtained by the coordinate converter, wherein the ripple extractor comprises a first ripple extractor that is configured to extract a first ripple from the direct current that is sensed by the current sensor, and is configured to convert the extracted first ripple and a ripple obtained by shifting the extracted first ripple by 90° into an I DC_signal_d component and an I DC_signal_q component of a synchronous coordinate system (I DC_signal_q, I DC_signal_q), a second ripple extractor that is configured to extract a second ripple from the i oD component and is configured to convert the extracted second ripple and a ripple obtained by shifting the extracted second ripple by 90° into an I oD_signal_q component and an I oD_Signal_d component of a synchronous coordinate system (I oD_signal_q, I oD_signal_d), and a third ripple extractor that is configured to extract a third ripple from the I oQ component of the synchronous coordinate system, and is configured to convert the extracted third ripple and a ripple obtained by shifting the extracted third ripple by 90° into an I oD_signal_q component and an I oD_signal_d component of a synchronous coordinate system (I oD_signal_q, I oQ_signal_d); a compensation value generator that is configured to generate a compensation value based on the at least one ripple that is extracted by the first ripple extractor, wherein the compensation value generator is configured to generate a first axis voltage (V * c_comp_d) and a second axis voltage (V * c_comp_q) as the compensation value based on the components of the first ripple extractor (I DC_signal_q, I DC_signal_q) and either the components of the second ripple extractor (I oD_signal_q, I oD_signal_d) or the components of the third ripple extractor (I oQ_signal_q, I oQ_signal_d); and a ripple compensator that is configured to remove the current ripple of the inverter by using the compensation value that is generated by the compensation value generator.