## 3 Research Methods
### Data Analysis
#### 3.4.3 Phase Three: Domain-Adaptive Sentiment Analysis (DASA)  
This phase aimed to assess user emotional inclinations concerning battery electric vehicle user experience (BEVUX) factors by employing domain-adaptive sentiment analysis (DASA). The analysis quantified user sentiments within the Chinese market regarding various BEV determinants. SnowNLP, introduced by [PERSON] et al. [55], serves as a Chinese natural language processing toolkit capable of sentiment analysis. The customized sentiment classification model was trained using domain-specific positive and negative review samples, enhancing the understanding of emotional lexicons specific to BEV user experiences. The procedure was as follows:  
Step 1. Collect domain-specific sentiment data: we assembled a collection of positive and negative review samples sourced from electric vehicle platforms, forums, blog articles, and similar venues. Step 2. Data preparation and preprocessing: the outcomes of topic modeling and multidimensional factor weight assessments were translated into a coded format, selecting texts with strong relevance from the initial dataset and conducting preprocessing tasks, including word segmentation and part-of-speech tagging, to prepare for subsequent analysis. Step 3. Training the domain-adaptive sentiment model: After preprocessing, we labeled the review samples (1 for positive and 0 for negative) and trained the sentiment analysis model using SnowNLP. The model relies on a Naive Bayes classifier to adaptively learn from domain-specific text features. 1. [PERSON] theorem: the core of the Naive Bayes classifier is given by (10): \[P(C|X)=\frac{P(X|C)\cdot P(C)}{P(X)}\] (10) where \(P(C/X)\) is the posterior probability of class \(C\) given feature \(X\), \(P(X/C)\) denotes the likelihood of feature \(X\) given class \(C\), \(P(C)\) indicates the prior probability of class \(C\), and \(P(X)\) stands for the marginal probability of feature \(X\). 2. Naive Bayes classifier: for text \(X\) consisting of words \(w_{1}\), \(w_{2}\), \(\ldots\), \(w_{n}\), assuming independence among words (11): \[P(C|w_{1},w_{2},\ldots,w_{n})=\frac{P(C)\cdot\prod\limits_{i=1}^{n}P(w_{i}|C)}{ P(w_{1},w_{2},\ldots,w_{n})}\] (11) where \(P(C/w_{1}\), \(w_{2}\), \(\ldots\),\(w_{n})\) denotes the probability that text \(X\) belongs to class \(C\), \(P(C)\) represents the prior probability of class \(C\), estimated from the frequency of classes in the training data, and \(P(w_{i}/C)\) is the probability of word \(w_{i}\) occurring in class \(C\), estimated from the frequency of words in class \(C\). 3. Prior probability calculation of \(P(C)\) (12): \[P(C)=\frac{N_{C}}{N}\] (12) where \(P(C)\) represents the prior probability of class \(C\), \(N_{C}\) denotes the number of documents belonging to class \(C\) in the training data, and \(N\) indicates the total number of documents in the training data. 4. Likelihood probability calculation (13): \[P(w_{i}\bigg{|}C)=\frac{n_{w_{i}}+\alpha}{n_{C}+V\alpha}\] (13) where \(n_{w_{i}}\) is the occurrence of word \(w_{i}\) in class \(C\), \(V\) is the vocabulary size, and \(\alpha\) is the smoothing parameter. Sentiment score calculation: To preclude underflow issues, computations were conventionally executed in logarithmic space. The text was categorized into positive or negative sentiment bins, with the respective sentiment score being determined. Step 4. Model deployment and performance evaluation: The trained model was deployed to assess its sentiment classification accuracy on new review texts. The accuracy was quantified by comparing the model's predictions against labeled validation data. Step 5. Sentiment distribution analysis: Sentiment scores were classified into categories: \"very good\", \"good\", \"average\", \"poor\", and \"very poor\". This analysis provided a nuanced understanding of users' emotional inclinations and helped identify key areas for product improvement. Step 6.