With the rapid advancement of the Internet of Things (IoT), a number of sensors are constantly deployed and connected to the Web, generating a large amount of real-time streaming data. Such sensor streams may include contextual events, which indicate meaningful information on our environment. For this reason, Web applications which are developed for IoT should embrace sensor streams. Hence, there is a need for a sensor mashup tool to compose multiple sensors for effectively processing sensor streams. However, existing models for sensor mashup do not support complex events included in sensor streams. In this paper, we propose a virtual complex sensor (VCS) model that enables users to combine various existing sensors and formula-based knowledge. In addition, we propose a method of automatically generating multiple VCSs according to a user's configuration. We also provide a graphical user interface for building a VCS mashup and processing complex events. Experimental results on the proposed semantic sensor mashup show that the proposed approach is reasonable and applicable to various IoT application domains.