R 类别变量分析 #统计学第7章

最近统计学课程有点落下了,自己尝试总结弥补下。

1.类别变量拟合优度检验

简单来说,检验样本频率和预期概率分布是否一致。

可以通过python随机模拟实现。已知分布情况,按样本大小随机取样,生成样本频率的分布,再对给定的样本频率进行p检验。

一个比较初步的python代码,对随机模拟的结果就没有继续处理了。

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import random

def randomPick(name_list, prob_list):
    cumulate_prob = 0.0
    x = random.uniform(0,1)
    for item, item_prob in zip(name_list, prob_list):
        cumulate_prob += item_prob
        if x < cumulate_prob:
            break
    return item

test = pd.DataFrame({'name':['a', 'b', 'c', 'd'],
                    'distribution':[0.3,0.2,0.45,0.05],
                    'frequency':[0.4,0.1,0.4,0.1]})
randomPick(test.name, test.colomn1)

R 语言实现起来很方便。

chisq.test(example[,1], p = c(预期分布))

原假设:与预期频数无显著差异。

p-value足够小时,拒绝原假设。

2.两个类别变量独立性检验

应用列联表的x2检验。

原假设:两个变量相互独立。

应用条件:

1.如果仅有2个单元格,单元格的最小期望频数不小于5。

2.有2个以上单元格,期望频数小于5的单元格不超过总数 的20%。

3.总的来说,样本量要足够大。

解决样本量不足的方法:合并单元格,这会丢失一些精度。

count = table(example[,1:2])
chisq.test(count)

3.两个类别变量的相关度检验

如果确认两个变量有关系,要引入系数度量相关性的大小。书上提供了3种系数,分别是《R 类别变量分析 #统计学第7章》, Cramer’s V, 列联系数。

需要了解的是,系数值越大相关性越强。

assocstats(count)

 

    原文作者:冉桂全
    原文地址: https://blog.csdn.net/weixin_42344269/article/details/84310278
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞