首页
关于
推荐
百度一下
腾讯视频
Search
1
你要的草莓熊来啦!——郑科院
5,318 阅读
2
第4章 实训2 删除年龄异常数据
5,044 阅读
3
郑州科技学院2023-2024学年第一学期期末统一考试 Python程序设计
4,083 阅读
4
郑州科技学院2022-2023年第二学期期末统一考试 管理学 课程试题
3,783 阅读
5
Python程序设计教学大纲(董付国老师版)
1,459 阅读
默认分类
登录
/
注册
Search
庞立智
累计撰写
79
篇文章
累计收到
384
条评论
首页
栏目
默认分类
页面
关于
推荐
百度一下
腾讯视频
搜索到
79
篇与
的结果
2023-11-06
第4章 实训3 离散化年龄特征
利用分类算法预测患者是否中风时,算法模型要求数据是离散的。 在实训2中巳对年龄特征异常值进行了处理, 现需要将连续型数据变换为 离散型数据 ,使用 等宽法 对年龄特征进行离散化。 实现思路及步骤 (1)获取年龄特征。 (2)使用等宽法离散化对年龄特征进行离散化。上代码:import pandas as pd import numpy as np stroke_info = pd.read_excel('../data/healthcare-dataset-stroke.xlsx') age_abs = pd.read_excel('../data/healthcare-dataset-age_abs.xlsx') link_outer = pd.merge(stroke_info, age_abs, how='outer', left_on='编号', right_on='编号') link_outer.head() age = link_outer['年龄'] age_nomal = [] for i in age: if i > 0.0: age_nomal.append(i) # 使用等宽法离散化函数 age_cut = pd.cut(age_nomal, 5) print('离散化后5条记录年龄分布为:\n', age_cut.value_counts())
2023年11月06日
343 阅读
0 评论
1 点赞
2023-11-06
第4章 实训2 删除年龄异常数据
基于实训1合并后的数据,经观察发现在年龄特征中存在异常值(年龄数值为小数如1.8), 为了避免异常值数据对分析结果造成不良影响,需要对异常值进行处理。实现思路及步骤 (1) 获取年龄特征。(2) 利用for循环获取年龄特征中的数值,并用if-else语旬判断年龄数值是否为异常值。(3)若年龄数值为异常值, 则删除异常值。上代码:import pandas as pd stroke_info = pd.read_excel('healthcare-dataset-stroke.xlsx') age_abs = pd.read_excel('healthcare-dataset-age_abs.xlsx') link_outer = pd.merge(stroke_info, age_abs, how='outer', left_on='编号', right_on='编号') age = link_outer['年龄'] age_nomal = [] for i in age: if i%1 == 0: age_nomal.append(True) else: age_nomal.append(False) link_outer2 = link_outer.loc[age_nomal,:] print(link_outer2)
2023年11月06日
5,044 阅读
51 评论
3 点赞
2023-11-06
第4章 实训1 合并年龄、平均血糖和中风患者信息数据
我国始终把保障人民健康放在优先发展的战略位詈。“上医治未病",建立疾病预防控制体系有利千从源头上预防和控制重大疾病。某医院为了早期监测预警患者的中风风险,对现有中风患者的基础值息和体检数据(healthcare-dataset-stroke.xlsx)进行分析,其部分数据如表4-15所示。经观察发现患者基础信息和休检数据中缺少中风患者的年龄和平均血糖的信息,然而在年龄和平均血糖数据(healthcare-dataset-age —abs.xlsx)中存放了分析所需的中风患者的年龄和平均血糖信息,其部分数据如表4-16所示。现需要对患者的 年龄 、 平均血糖数据 与 患者基础信息 和 休检数据 进行合并,以便下一步分析。 实现思路和步骤: (1) 利用read —excel函数读取healthcare-dataset-stroke.xlsx表。(2) 利用read_excel函数读取healthcare-dataset-age_abs .xlsx表。(3) 查看两表的数据量。(4) 以编号作为主键进行外连接。(5) 查看数据是否合并成功。上代码:import pandas as pd stroke_info = pd.read_excel('Path') age_abs = pd.read_excel('Path') link_outer = pd.merge(stroke_info, age_abs, how='outer', left_on='编号', right_on='编号') print(link_outer.head())
2023年11月06日
428 阅读
0 评论
8 点赞
2023-10-30
第4章 使用Pandas进行数据预处理之任务4.4 转换数据
代码 4-24 利用get_dummies函数进行哑变量处理import pandas as pd all_info = pd.read_csv('../data/user_all_info.csv') live_type = all_info.loc[0: 5, '居住类型'] #抽取部分数据做演示 print('哑变量处理前的数据为:\n', live_type) print('哑变量处理后的数据为:\n', pd.get_dummies(live_type)) 代码 4-25 等宽法离散化age_cut = pd.cut(all_info['年龄'], 5)#提取年龄 print('离散化后5条记录年龄分布为:\n', age_cut.value_counts()) 代码 4-26 等频法离散化import numpy as np # 自定义等频法离散化函数 def same_rate_cut(data, k): w = data.quantile(np.arange(0, 1 + 1.0 / k, 1.0 / k)) data = pd.cut(data, w) return data # 对用户年龄进行等频法离散化 age_same_rate = same_rate_cut(all_info['年龄'], 5).value_counts() print('用户年龄数据等频法离散化后分布状况为:', '\n', age_same_rate) 代码 4-27 聚类离散化# 自定义数据K-Means聚类离散化函数 def kmean_cut(data, k): from sklearn.cluster import KMeans # 引入K-Means # 建立模型 kmodel = KMeans(n_clusters=k) kmodel.fit(data.values.reshape((len(data), 1))) # 训练模型 # 输出聚类中心并排序 c = pd.DataFrame(kmodel.cluster_centers_).sort_values(0) w = c.rolling(2).mean().iloc[1:] # 相邻两项求中点,作为边界点 w = [0] + list(w[0]) + [data.max()] # 把首末边界点加上 data = pd.cut(data, w) return data # 用户年龄等频法离散化 all_info['年龄'].dropna(inplace=True) age_kmeans = kmean_cut(all_info['年龄'], 5).value_counts() print('用户年龄聚类离散化后各个类别数目分布状况为:', '\n', age_kmeans)
2023年10月30日
287 阅读
0 评论
1 点赞
2023-10-30
第4章 使用Pandas进行数据预处理之4.3 标准化数据 Page-110
代码 4-21import pandas as pd pay = pd.read_csv('../data/user_pay_info.csv', index_col=0) # 自定义离差标准化函数 def min_max_scale(data): data = (data - data.min()) / (data.max() - data.min()) return data # 对用户每月支出信息表的每月支出数据做离差标准化 pay_min_max = min_max_scale(pay['每月支出']) print('离差标准化之前每月支出数据为:\n', pay['每月支出'].head()) print('离差标准化之后每月支出数据为\n', pay_min_max.head())代码 4-22 对用户每月支出信息表的每月支出数据做标准差标准化自定义标准差标准化函数def standard_scaler(data): data = (data - data.mean()) / data.std() return data # 对用户每月支出信息表的每月支出数据做标准差标准化 pay_standard = standard_scaler(pay['每月支出']) print('标准差标准化之前每月支出数据为:\n', pay['每月支出'].head()) print('标准差标准化之后每月支出数据为:\n', pay_standard.head()) 代码 4-23 对用户每月支出信息表的每月支出数据做小数定标标准化# 自定义小数定标标准化函数 import numpy as np def decimal_scaler(data): data = data / 10 ** np.ceil(np.log10(data.abs().max())) return data # 对用户每月支出信息表的每月支出数据做小数定标标准化 pay_decimal = decimal_scaler(pay['每月支出']) print('小数定标标准化之前的每月支出数据:\n', pay['每月支出'].head()) print('小数定标标准化之后的每月支出数据:\n', pay_decimal.head())
2023年10月30日
236 阅读
0 评论
2 点赞
1
...
8
9
10
...
16