1.我现在有一个EXCEL,其中有一张名为“宠物疾病数据库”的表,该表格目前只有1列数据,列名称为“宠物疾病”,数据内容为宠物疾病,示例如下:“小猫得了猫鼻支”,“猫传染性鼻支气管炎”,“猫疱疹病毒I型”。 2.在这个EXCEL中,还有另外一张表(训练集)名为“宠物疾病数据库已标化”,该表格有2列数据,第1列名称为“宠物疾病其他”,第2列名称为“宠物疾病其他结果”,第2列是已经打好了的标签。可以将该数据库作为训练模型的依据。 3.我希望搭建一个训练模型,该模型可以帮我对“宠物疾病数据库”中的“宠物疾病”做标准化归类(打标签),打标签的原则可以参考(训练集)“宠物疾病数据库已标化”。请帮我写Python代码完成上面操作,并将打标签的结果写入“宠物疾病数据库”第2列,第2列命名为“宠物疾病结果”,谢谢!
时间: 2024-03-12 12:49:18 浏览: 163
好的,以下是Python的代码实现。
首先需要安装 pandas 库,可以使用命令 `pip install pandas` 进行安装。
```python
import pandas as pd
# 读取宠物疾病数据库
df = pd.read_excel('宠物疾病数据库.xlsx')
# 读取宠物疾病数据库已标化
train_df = pd.read_excel('宠物疾病数据库已标化.xlsx')
# 将宠物疾病其他列作为索引
train_df.set_index('宠物疾病其他', inplace=True)
# 对每一个宠物疾病进行标准化归类
for index, row in df.iterrows():
disease = row['宠物疾病']
if disease in train_df.index:
result = train_df.loc[disease, '宠物疾病其他结果']
df.loc[index, '宠物疾病结果'] = result
# 将结果写入宠物疾病数据库
df.to_excel('宠物疾病数据库.xlsx', index=False)
```
将上述代码保存为 Python 文件并运行即可完成对“宠物疾病数据库”中的“宠物疾病”进行标准化归类,并将结果写入“宠物疾病结果”列。
相关问题
1.我现在有一个EXCEL,其中有一张名为“宠物疾病数据库”的表,该表格目前只有1列数据,列名称为“宠物疾病”,数据内容为宠物疾病,示例如下:“小猫得了猫鼻支”,“猫传染性鼻支气管炎”,“猫疱疹病毒I型”。 2.在这个EXCEL中,还有另外一张表(训练集)名为“宠物疾病数据库已标化”,该表格有2列数据,第1列名称为“宠物疾病其他”,第2列名称为“宠物疾病其他结果”,第2列是已经打好了的标签。可以将该数据库作为训练模型的依据。 3.我希望搭建一个训练模型,该模型可以帮我对“宠物疾病数据库”中的“宠物疾病”做标准化归类(打标签),打标签的原则可以参考(训练集)“宠物疾病数据库已标化”。请帮我写VBA代码完成上面操作,并将打标签的结果写入“宠物疾病数据库”第2列,第2列命名为“宠物疾病结果”,谢谢!
很高兴能够帮您!以下是VBA代码的实现:
```
Sub 标准化归类()
Dim ws1 As Worksheet, ws2 As Worksheet
Dim lastrow As Long, i As Long
Dim result As String
'设置工作表变量
Set ws1 = ThisWorkbook.Sheets("宠物疾病数据库")
Set ws2 = ThisWorkbook.Sheets("宠物疾病数据库已标化")
'获取最后一行
lastrow = ws1.Cells(Rows.Count, 1).End(xlUp).Row
'循环处理每一行数据
For i = 2 To lastrow
'获取当前行的疾病名称
disease = ws1.Cells(i, 1).Value
'在训练集中查找对应的标签
Set found = ws2.Columns("宠物疾病其他").Find(what:=disease, LookIn:=xlValues, lookat:=xlWhole)
'如果找到了标签,则将标签写入“宠物疾病结果”列
If Not found Is Nothing Then
result = ws2.Cells(found.Row, 2).Value
ws1.Cells(i, 2).Value = result
End If
Next i
End Sub
```
将上述代码复制到VBA编辑器中,并运行即可完成对“宠物疾病数据库”中的“宠物疾病”进行标准化归类,并将结果写入“宠物疾病结果”列。
阅读全文