FeaturePr_3.py直接从源文件计算,不从中间文件计算,已经对比过了,和昨天FeaturePr_2.py是一样的
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…
Reference in New Issue