FeaturePr_3.py直接从源文件计算,不从中间文件计算,已经对比过了,和昨天FeaturePr_2.py是一样的

main
wangchunlin 3 years ago
parent 420f6883fc
commit 1ad0207d51

@ -0,0 +1,37 @@
import pandas as pd
# 读取原始数据表
df_src = pd.read_excel("data/data_src.xlsx")
# 处理父亲教养方式数字化
df_src['父亲教养方式数字化'] = df_src['父亲教养方式'].apply(lambda x: 0.59 if x == '温暖与理解' else 0.46)
# 处理母亲教养方式数字化
df_src['母亲教养方式数字化'] = df_src['母亲教养方式'].apply(lambda x: 0.69 if x == '温暖与理解' else 0.56)
# 处理自评家庭经济条件数字化
df_src['自评家庭经济条件数字化'] = df_src['自评家庭经济条件'].apply(lambda x: 0.54 if x in ['贫困', '较差'] else 0.47)
# 处理有无心理治疗(咨询)史数字化
df_src['有无心理治疗(咨询)史数字化'] = df_src['心理治疗(咨询)史'].apply(lambda x: 0.09 if x in ['', '没有'] else 0.21)
# 处理强迫症状数字化
df_src['强迫症状数字化'] = df_src['强迫症状'] / 4
# 处理人际关系敏感症状数字化
df_src['人际关系敏感症状数字化'] = df_src['人际关系敏感'] / 4
# 处理抑郁症状数字化
df_src['抑郁症状数字化'] = df_src['抑郁'] / 4
# 计算多因子症状
df_src['多因子症状'] = df_src[['躯体化', '强迫症状', '人际关系敏感', '抑郁', '焦虑', '敌对', '恐怖', '偏执', '精神病性', '其他']].apply(lambda row: sum(row > 3.0) / 10, axis=1)
# 选择需要复制的列
columns_to_copy = ['编号', '性别', '年龄', '父亲教养方式', '父亲教养方式数字化', '母亲教养方式', '母亲教养方式数字化', '自评家庭经济条件', '自评家庭经济条件数字化', '心理治疗(咨询)史', '有无心理治疗(咨询)史数字化', '躯体化', '强迫症状', '强迫症状数字化', '人际关系敏感', '人际关系敏感症状数字化', '抑郁', '抑郁症状数字化', '焦虑', '敌对', '恐怖', '偏执', '精神病性', '其他', '多因子症状']
# 复制选定的列到新表
df_feature = df_src[columns_to_copy].copy()
# 保存新表
df_feature.to_excel("feature.xlsx", index=False)
Loading…
Cancel
Save