Epilepsy is a chronic disorder caused by excessive electrical discharges. Currently, clinical experts identify the seizure onset zone (SOZ) channel through visual judgment based on long-time intracranial electroencephalogram (iEEG), which is a very time-consuming, difficult and experience-based task. Therefore, there is a need for high-accuracy diagnostic aids to reduce the workload of clinical experts. In this article, we propose a method in which, the iEEG is split into the 20-s segment and for each patient, we ask clinical experts to label a part of the data, which is used to train a model and classify the remaining iEEG data. In recent years, machine learning methods have been successfully applied to solve some medical problems. Filtering, entropy and short-time Fourier transform (STFT) are used for extracting features. We compare them to wavelet transform (WT), empirical mode decomposition (EMD) and other traditional methods with the aim of obtaining the best possible discriminating features. Finally, we look for their medical interpretation, which is important for clinical experts. We achieve high-performance results for SOZ and non-SOZ data classification by using the labeled iEEG data and support vector machine (SVM), fully connected neural network (FCNN) and convolutional neural network (CNN) as classification models. In addition, we introduce the positive unlabeled (PU) learning to further reduce the workload of clinical experts. By using PU learning, we can learn a binary classifier with a small amount of labeled data and a large amount of unlabeled data. This can greatly reduce the amount and difficulty of annotation work by clinical experts. All together, we show that using 105 minutes of labeled data we achieve a classification result of 91.46% on average for multiple patients.