当前位置:首页 > 教育 >

方差分析结果描述(方差分析法确定主要因素)

来源:原点资讯(m.360kss.com)时间:2024-05-19 15:37:02作者:YD166手机阅读>>

从上图中,我们看到所有数据点都靠近45度线,因此我们可以得出结论,它遵循正态分布。

方差假设检验的同质性检查

应针对分类变量的每个级别检查方差假设的同质性。我们可以使用Levene检验来检验组之间的均等方差。

w, pvalue = stats.bartlett(newDf['Count'][newDf['density_Group']=='Dense1'], newDf['Count'][newDf['density_Group']=='Dense2'] , newDf['Count'][newDf['density_Group']=='Dense3'], newDf['Count'][newDf['density_Group']=='Dense4']) print(w, pvalue) ## Levene 方差测试 stats.levene(dataNew['Dense1'],dataNew['Dense2'],dataNew['Dense3'],dataNew['Dense4'])

我们发现所有密度组的p值都大于0.05。因此,我们可以得出结论,各组具有相等的方差。

Python中的双向方差分析测试

同样,使用相同的数据集,我们将试图了解一个地区或州的密度、人口年龄和日冕病例数量之间是否存在显著关系。因此,我们将根据居住在其中的人口密度绘制每个州的地图。

让我们导入数据并检查是否存在任何数据歧义:

individualDetails=pd.read_csv('./individualDetails.csv',parse_dates=[2]) stateDensity=pd.read_csv('./stateDensity.csv')

方差分析结果描述,方差分析法确定主要因素(13)

从上面的代码片段中,我们可以看到没有感染婴儿的记录。接下来,检查数据中是否缺少值:

individualDetails.isna().sum() print('Percentage of missing values in age & gender columns respectively :', \ (individualDetails['age'].isna().sum()/individualDetails.shape[0])*100,'%',\ (individualDetails['gender'].isna().sum()/individualDetails.shape[0])*100,'%')

我们发现在年龄和性别栏中分别有超过91%和80%的条目丢失。所以我们需要设计一种方法来估算它们。

在这里,我将以各州的性别中位数和各州的性别中位数估算年龄。因此,我将计算中位数和众数:

ageMedianPerState=individualDetails[~individualDetails['age'].isna()] ageMedianPerState['age']=ageMedianPerState['age'].astype(str).astype(int) ageMedianPerState=ageMedianPerState.groupby('State')[['age']].median().reset_index() ageMedianPerState['age']=ageMedianPerState['age'].apply(lambda x:math.ceil(x)) #通过COVID-19查找每个州的最常感染的性别 genderModePerState=individualDetails.groupby(['State'])['gender'].agg(pd.Series.mode).to_frame().reset_index() #这没有获得有关总体性别的信息性别 genderModePerState=genderModePerState[genderModePerState['State']!='Arunachal Pradesh']

#现在在年龄和性别栏填充丢失的值 for index,row in individualDetails.iterrows(): if row['State']=='Arunachal Pradesh': individualDetails.drop([index],inplace=True) continue if pd.isnull(row['age']): individualDetails['age'][index]=list(ageMedianPerState['age'][ageMedianPerState['State']=='West Bengal'].values)[0] if pd.isnull(row['gender']): if len(genderModePerState['gender'][genderModePerState['State']==row['State']].values)>0: individualDetails['gender'][index]=(genderModePerState['gender'][genderModePerState['State']==row['State']].values[0])

现在,让我们合并individualDetails和stateDensity数据帧,为我们创建一个整体数据集:

data = pd.merge(individualDetails,stateDensity,on='State',how='left').reset_index(drop=True)

现在我们可以创建年龄组桶:

data.dropna(subset=['density_Group'],inplace=True) data.reset_index(drop=True,inplace=True)

合并数据以获得一个数据集,其中每个人都映射了他们的年龄组和各自的州密度组:

patient_Count=data.groupby(['diagnosed_date','density_Group'])[['diagnosed_date']].count().\ rename(columns={'diagnosed_date':'Count'}).reset_index() data=pd.merge(data,patient_Count,on=['diagnosed_date','density_Group'],how='inner') newData=data.groupby(['density_Group','age_Group'])['Count'].apply(list).reset_index() newData.head() np.random.seed(1234) AnovaData=pd.DataFrame(columns=['density_Group','age_Group','Count']) for index,row in newData.iterrows(): count=17 tempDf=pd.DataFrame(index=range(0,count),columns=['density_Group','age_Group','Count']) tempDf['age_Group']=newData['age_Group'][index] tempDf['density_Group']=newData['density_Group'][index] tempDf['Count']=random.sample(list(newData['Count'][index]),count) AnovaData=pd.concat([AnovaData,tempDf],axis=0)

检查数据中Count列的分布,并使用箱线图方法检查数据中是否存在异常值:

plt.hist(AnovaData['Count']) plt.show() sns.kdeplot(AnovaData['Count'],cumulative=False,bw=2)

方差分析结果描述,方差分析法确定主要因素(14)

我们发现在我们的数据中有许多异常值。甚至计数变量的分布也不是高斯分布。因此,我们将使用Box-Cox变换方法来处理这种情况:

sns.boxplot(x='age_Group', y='Count', data=AnovaData, palette="colorblind")

方差分析结果描述,方差分析法确定主要因素(15)

AnovaData['Count']=AnovaData['Count'].astype(int) ## 数据转换 AnovaData['newCount'],fitted_lambda = stats.boxcox(AnovaData['Count']) import matplotlib.pyplot as plt sns.kdeplot(AnovaData['newCount'],cumulative=False,bw=2)

现在让我们使用OLS模型来检验我们的假设:

## 拟合OlS模型-方法1 model2 = ols('newCount ~ C(age_Group) C(density_Group)', AnovaData).fit() print(f"Overall model F({model2.df_model: },{model2.df_resid: }) = {model2.fvalue: }, p = {model2.f_pvalue: }") model2.summary()

方差分析结果描述,方差分析法确定主要因素(16)

栏目热文

方差分析的核心在哪里(方差分析可以用于两个样本均数的比较)

方差分析的核心在哪里(方差分析可以用于两个样本均数的比较)

【问题导入】在“免费师范生远程可视化学习平台需求调查问卷”中,推断专业对学生的读研深造态度是否有显著影响,以便我们了解不...

2024-05-19 15:38:40查看全文 >>

方差分析法的分析步骤(方差分析的四种方法)

方差分析法的分析步骤(方差分析的四种方法)

一、方差分析方差分析用于分析定类数据与定量数据之间的关系情况。例如研究人员想知道三组学生的智商平均值是否有显著差异。方差...

2024-05-19 15:24:43查看全文 >>

方差分析具体步骤(方差分析的一般步骤)

方差分析具体步骤(方差分析的一般步骤)

多个总体参数的判断如果需要对更多的总体参数进行推断或者需要研究多个变量之间的关系,则需要方差分析的思想和内容。前面4章,...

2024-05-19 15:20:48查看全文 >>

方差分析的原理和步骤(简述方差分析的基本思想)

方差分析的原理和步骤(简述方差分析的基本思想)

本文作者介绍了分析思维模型:方差分析模型。方差分析模型可以帮助我们更好地理解数据、更加科学地处理数据,做出更加科学的决策...

2024-05-19 15:31:50查看全文 >>

方差分析的举例及方法(方差分析的基本思想和应用条件)

方差分析的举例及方法(方差分析的基本思想和应用条件)

有没有一个好的方法来学习理解方差分析,条理清晰,理解容易呢?方差分析,是析因试验,就是分析效应的过程,所以通过效应,就可...

2024-05-19 15:54:50查看全文 >>

方差分析经典例题

方差分析经典例题

一、方差分析1.方差分析的基本原理指根据试验结果,鉴别各个有关因素对试验结果影响的有效方法。是方差的可加性原则。 2.方...

2024-05-19 15:40:53查看全文 >>

方差分析的应用条件(方差分析的原理和步骤)

方差分析的应用条件(方差分析的原理和步骤)

国开24春《医学统计学》形考作业2【标准答案】形成性考核任务二(第3-4章 25%)试卷总分:100 得分:1001.名...

2024-05-19 15:35:39查看全文 >>

方差分析三大基本定理(方差分析三个基本条件)

方差分析三大基本定理(方差分析三个基本条件)

一文整理了方差分析的全部内容,包括方差分析的定义(基本思想、检验统计量的计算、前提条件)、方差分析分类(单因素、双因素、...

2024-05-19 15:58:35查看全文 >>

介绍法布尔的图片(蝉法布尔ppt)

介绍法布尔的图片(蝉法布尔ppt)

法布尔,全名:让·亨利·卡西米尔·法布尔,国籍:法国,代表作品:《昆虫记》。法布尔是法国著名的昆虫学家和科普作家,《昆虫...

2024-05-19 15:50:25查看全文 >>

法布尔的全部资料(法布尔详细介绍)

法布尔的全部资料(法布尔详细介绍)

《昆虫记》是法布尔耗费40多年心血完成的名著,书中融合了细腻的自然观察与法国式的幽默,将19世纪法国南部的自然人文风情娓...

2024-05-19 15:23:28查看全文 >>

文档排行