1. value_counts()统计某个列Series中各个唯一值出现的频率次数2. ffill()# 使用前向填充和后向填充的方法填补缺失值 4分data[Value].ffill(inplaceTrue)data[Value].bfill(inplaceTrue)# inplaceTrue 直接修改原数据1. 求比例# 1. 总患者数totallen(data)# 2. 分别统计高/低风险人数high_count(data[RiskLevel]高风险患者).sum()low_count(data[RiskLevel]低风险患者).sum()# 3. 计算比例high_ratehigh_count/total low_ratelow_count/total# 输出转百分比更直观print(f高风险患者占比{high_rate:.2%})print(f低风险患者占比{low_rate:.2%})# 直接统计所有RiskLevel的占比, key(RiskLevel值)-value(比例小数)risk_ratiodata[RiskLevel].value_counts(normalizeTrue)# 单独提取高、低风险print(高风险患者占比,risk_ratio[高风险患者])print(低风险患者占比,risk_ratio[低风险患者])# 分组求比例True1False0mean()占比high_rate(data[RiskLevel]高风险患者).mean()low_rate(data[RiskLevel]低风险患者).mean()print(f高风险患者占比{high_rate:.2%})print(f低风险患者占比{low_rate:.2%})2. numpy where 函数importnumpyasnp# 1. 纯数字数组不用任何数据集arrnp.array([18,25,30,16])# 用 np.where 判断 BMI 范围resultnp.where(arr28,肥胖,正常)print(result)# 输出[正常 正常 肥胖 正常]# 创建新列RiskLevel根据住院天数判断风险等级data[RiskLevel]np.where(data[DaysInHospital]7,高风险患者,低风险患者)3. cut 函数 (类似 case when)连续数值 → 分段打标签importnumpyasnpimportpandasaspd# 1. 定义边界5个边界bmi_bins[0,18.5,24,28,np.inf]# 2. 定义标签4个标签对应4个区间bmi_labels[偏瘦,正常,超重,肥胖]# 3. 执行分段给每个BMI值分配区间标签data[BMIRange]pd.cut(data[BMI],binsbmi_bins,labelsbmi_labels,rightFalse# 左闭右开[0,18.5) [18.5,24) ...)4. groupby 函数