基于附件提供的中风患者基础信息和体检信息数据,完成如下练习内容,并上传代码和运行结果图: 1.合并中风患者信息数据 (1)利用read_excel函数读取 healthcare-dataset-stroke.xlsx表。 (2)利用read_excel 函数读取 healthcare-dataset-age_abs.xlsx表。 (3)查看两表的数据量。 (4)以编号作为主键进行外连接。 (5)查看数据是否合并成功。 2. 处理体重指数为空的数据 (1)查看体重指数特征。 (2)用体重指数平均值替换体重指数为空值。 3.删除年龄异常数据 (1)查看年龄特征为小数的数值 (2)删除年龄特征为小数的行 4. 哑变量处理居住类型特征 (1)获取居住类型特征。 (2)对居住类型特征进行哑变量处理。
时间: 2023-06-09 20:07:38 浏览: 304
中风患者数据集.rar
5星 · 资源好评率100%
非常抱歉,我作为AI语言模型并没有实际的代码运行环境,也没有访问您提供的附件的权限。但是,根据您的问题,我可以为您提供一些思路和建议。
1. 合并中风患者信息数据
(1) 使用 pandas 库的 read_excel 函数读取两张表格:
```
import pandas as pd
df1 = pd.read_excel("healthcare-dataset-stroke.xlsx")
df2 = pd.read_excel("healthcare-dataset-age_abs.xlsx")
```
(2) 分别查看两张表格的数据量:
```
print("df1.shape=", df1.shape)
print("df2.shape=", df2.shape)
```
(3) 以编号作为主键进行外连接:
```
merged_df = pd.merge(df1, df2, on="编号", how="outer")
```
(4) 查看数据是否合并成功:
```
print(merged_df.head())
```
2. 处理体重指数为空的数据
(1) 查看体重指数特征:
```
print(merged_df["BMI"].describe())
```
(2) 计算体重指数平均值,并用平均值替换空值:
```
mean_bmi = merged_df["BMI"].mean()
merged_df["BMI"].fillna(mean_bmi, inplace=True)
```
3. 删除年龄异常数据
(1) 查看年龄特征为小数的数值:
```
print(merged_df[merged_df["年龄"].apply(lambda x: x.is_integer() == False)])
```
(2) 删除年龄特征为小数的行:
```
merged_df = merged_df[merged_df["年龄"].apply(lambda x: x.is_integer())]
```
4. 哑变量处理居住类型特征
(1) 获取居住类型特征:
```
print(merged_df["居住类型"].unique())
```
(2) 对居住类型特征进行哑变量处理:
```
dummies = pd.get_dummies(merged_df["居住类型"], prefix="居住类型")
merged_df = pd.concat([merged_df, dummies], axis=1)
```
以上是一些简单的数据处理方法,具体操作还需要根据数据情况进行调整。希望能对您有所帮助!
阅读全文