【发布时间】:2021-04-02 13:52:00
【问题描述】:
我是一名学生,正在尝试完成一项涉及实证分析的大学作业。 我们目前正在 python 中进行多重回归,我想知道我是否以正确的方式进行。
我正在尝试做的是假设检验,以检查一个变量的效果是否与另一个相同。它只是一个 sn-p,但您可以想象我有一个数据框,我目前对占据第 1 列和第 2 列的变量感兴趣。第 0 列是添加到模型中的常量。 我说的对吗?
import os
import numpy as np
import pandas as pd
import scipy.stats as stats
import statsmodels.api as sm
import matplotlib.pyplot as plt
import seaborn as sns
newvars3 = data[['w_a', 'gender', 'gkclasssize', 'gkclasstype', 'gktyears', 'gkabsent']]
newvars3 = sm.add_constant(newvars3)
modelnewvars3 = sm.OLS(ymath, newvars3, missing='drop')
resultnewvars3 = modelnewvars3.fit()
print(resultnewvars3.summary())
csvnewvars3 = resultnewvars3.summary().as_csv()
open(report_dir + 'summ_newvars3_math.csv', 'w').write(csvnewvars3)
##Testing the effect of gender vs race
R = np.array([0, 1, 1, 0, 0, 0, 0])
tvalue = R @ resultnewvars3.params / (R @ resultnewvars3.cov_params() @ R.T)
pvalue = 2*(1 - stats.norm.cdf(tvalue))
gen_race_hypo_test = pd.Series(np.array([tvalue, pvalue]), index=['T-value', 'P-value'])
gen_race_hypo_test.name = 'Hypothesis test for same effect: Gender vs Race'
print('\n', gen_race_hypo_test)
data['w_a'] 是种族的虚拟变量,0 表示白人/亚洲人,1 表示其他人。 回答这个问题需要统计理论/知识。
【问题讨论】:
-
请不要粘贴您的代码图片,粘贴实际代码
标签: python statistics