使用python查找置信区间

问题描述 投票:0回答:1

我正在尝试使用误差范围来计算置信区间,但这给了我一个错误。以下是我编写的代码。请帮助!

import pandas as pd
import scipy.stats as stats
import math
import numpy as np
import warnings

warnings.filterwarnings('ignore')

sample_size=2000
z_critical = stats.norm.ppf(q = 0.95)  

# path        [File location variable]
#Code starts here
data = pd.read_csv(path)
data_sample = data.sample(n=2000, random_state=0)
sample_mean = data_sample['installment'].mean
sample_std = data_sample['installment'].std()
a = sample_size ** 0.5
margin_of_error = z_critical * (sample_std/44.721)
confidence_interval = (sample_mean + margin_of_error, sample_mean - margin_of_error)

给出:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-1-3f5eda42a1b0> in <module>()
     24 # print(type(a))
     25 margin_of_error = z_critical * (sample_std/a)
---> 26 confidence_interval = (sample_mean + margin_of_error, sample_mean - margin_of_error)
     27 true_mean = data['installment'].mean
     28 print(confidence_interval)
TypeError: unsupported operand type(s) for +: 'method' and 'float'
python statistics confidence-interval
1个回答
1
投票

很可能是由于输入错误-您缺少括号

sample_mean = data_sample['installment'].mean

应该是

sample_mean = data_sample['installment'].mean()

[mean(无括号)是一种方法,而不是浮点数,因此尝试将其添加到margin_of_error(实际上是浮点数)时发生错误。

© www.soinside.com 2019 - 2024. All rights reserved.