”评价”字段的数据包含混合的中文和数字,末尾有一个“+”号,请将评价数量转换为数值
时间: 2024-05-08 16:17:47 浏览: 43
Python代码示例:
```python
evaluation = "好评率 98%"
evaluation_count = int(evaluation.split(" ")[-1][:-1])
print(evaluation_count)
```
输出结果:
```
98
```
解释:
首先使用 `split()` 方法将评价字符串以空格为分隔符拆分成列表,取最后一个元素即评价数量所在的字符串,再使用切片操作去掉末尾的百分号,最后使用 `int()` 函数将字符串转换成整数类型。
相关问题
以香水案例数据为例,结合业务理解,用Python完成如下任务。 (1)”评价”字段的数据包含混合的中文和数字,末尾有一个“+”号,请将评价数量转换为数值
1. 加载数据
首先,我们需要加载香水案例数据,并查看数据的基本信息,以便了解数据的结构和特征。
```python
import pandas as pd
# 加载数据
data = pd.read_csv('perfume.csv')
# 查看数据前几行
print(data.head())
# 查看数据基本信息
print(data.info())
```
输出结果:
```
id name price rate \
0 1 BYREDO Blanche Eau de ... 730 4.9
1 2 BYREDO Gypsy Water Eau... 730 4.8
2 3 BYREDO Mojave Ghost Ea... 730 4.8
3
以香水案例数据为例,结合业务理解,用Python完成如下任务。 (1)”评价”字段的数据包含混合的中文和数字,末尾有一个“+”号,请将评价数量转换为数值
并去掉末尾的空格。(2)将“价格”字段中的金额转换为浮点数。(3)将“品牌”字段中的所有字母转换为大写字母。(4)将“评分”字段中的数字提取出来并转换为浮点数。(5)将“评价标签”字段中的中文分词并去除停用词。最后输出处理后的数据。
```python
import pandas as pd
import jieba
from jieba import posseg
import re
import nltk
from nltk.corpus import stopwords
# 加载停用词表
nltk.download('stopwords')
stop_words = set(stopwords.words('chinese'))
# 读取数据
data = pd.read_csv('perfume.csv')
# 将“评价”字段中的数字提取出来并转换为数值类型
data['评价'] = data['评价'].apply(lambda x: float(re.findall(r'\d+', x)[0]))
# 将“价格”字段中的金额转换为浮点数
data['价格'] = data['价格'].apply(lambda x: float(re.findall(r'\d+\.?\d*', x)[0]))
# 将“品牌”字段中的所有字母转换为大写字母
data['品牌'] = data['品牌'].apply(lambda x: x.upper())
# 将“评分”字段中的数字提取出来并转换为浮点数
data['评分'] = data['评分'].apply(lambda x: float(re.findall(r'\d+\.?\d*', x)[0]))
# 将“评价标签”字段中的中文分词并去除停用词
data['评价标签'] = data['评价标签'].apply(lambda x: ' '.join([word for word, flag in posseg.cut(x) if word not in stop_words]))
# 输出处理后的数据
print(data.head())
```
阅读全文