例題 看護師の排泄ケア時間と患者の回復時間の母相関係数の95%信頼区間を求めるpythonコード

例題

ある病院で行われた排泄ケアに関する調査で、看護師の1週間あたりの排泄ケア時間(分)と患者の回復時間(日)のデータが得られました。以下は10人の患者に対するデータです。看護師の排泄ケア時間は、[28,32,25,30,35,28,29,31,27,33]であり、患者の回復時間 [5,4,7,3,6,5,6,4,8,3]でした。

このデータを使用して、看護師の排泄ケア時間と患者の回復時間の母相関係数の95%信頼区間を求めるpythonコードを示して、その計算結果を解釈してください。

 

母相関係数の95%信頼区間を求めるためには、SciPyライブラリなどを使用してPearsonの相関係数を計算し、その信頼区間を得ることができます。以下は、Pythonコードの例です。

import numpy as np

from scipy import stats

# データセット

nurse_care_time = np.array([28, 32, 25, 30, 35, 28, 29, 31, 27, 33])

patient_recovery_time = np.array([5, 4, 7, 3, 6, 5, 6, 4, 8, 3])

# 相関係数の計算

correlation_coefficient = np.corrcoef(nurse_care_time, patient_recovery_time)[0, 1]

# ブートストラップ法による相関係数の95%信頼区間を計算

num_simulations = 10000

bootstrap_correlations = []

for _ in range(num_simulations) 

    # データのブートストラップサンプリング

    nurse_sample = np.random.choice(nurse_care_time, size=len(nurse_care_time), replace=True)

    patient_sample = np.random.choice(patient_recovery_time, size=len(patient_recovery_time), replace=True)

        # ブートストラップサンプルでの相関係数の計算

    bootstrap_correlation = np.corrcoef(nurse_sample, patient_sample)[0, 1]

    bootstrap_correlations.append(bootstrap_correlation)

# 信頼区間の計算

confidence_interval = np.percentile(bootstrap_correlations, [2.5, 97.5])

# 結果の表示

print("母相関係数の95%信頼区間­", confidence_interval)

出力結果

母相関係数の95%信頼区間= [-0.62865796  0.64481084]

 

このコードでは、まず元のデータから計算した相関係数を求め、その後、ブートストラップ法を使用して相関係数の95%信頼区間を計算しています。計算結果の解釈として、結果が (0.628, 0.644) の場合、看護師の排泄ケア時間と患者の回復時間の母相関係数は95%の確率で-0.628から0.644の間に存在すると推定されます。

 

これを、一般的な方法で、母相関係数の95%信頼区間を求めるには、通常のt分布を使用します。

import numpy as np

from scipy import stats

# データセット

nurse_care_time = np.array([28, 32, 25, 30, 35, 28, 29, 31, 27, 33])

patient_recovery_time = np.array([5, 4, 7, 3, 6, 5, 6, 4, 8, 3])

# 相関係数の計算

correlation_coefficient = np.corrcoef(nurse_care_time, patient_recovery_time)[0, 1]

# 要素数

n = len(nurse_care_time)

# 自由度

degrees_of_freedom = n - 2

# t分布に基づく信頼区間の計算

t_critical = stats.t.ppf(0.975, degrees_of_freedom)

standard_error = np.sqrt((1 - correlation_coefficient**2) / degrees_of_freedom)

margin_of_error = t_critical * standard_error

confidence_interval = (correlation_coefficient - margin_of_error, correlation_coefficient + margin_of_error)

# 結果の表示

print("母相関係数の95%信頼区間=", confidence_interval)

出力結果

母相関係数の95%信頼区間= (-1.2203841515886518, 0.16438832992639774)

 

このコードでは、まず元のデータから計算した相関係数を求め、その後、t分布に基づく95%信頼区間を計算しています。計算結果の解釈として、結果が (-1.220, 0.164) の場合、看護師の排泄ケア時間と患者の回復時間の母相関係数は95%の確率で-1.220から0.164の間に存在すると推定されます。

 

以上のことから、ブートストラップ法とt分布を用いた一般的な方法では、母相関係数の95%信頼区間に大きな相違があります。そこで、統計的な結果だけでなく、確定的な結論を導くにはサンプル数等を含め、他の考慮する要因について検討することが重要です。

このブログの人気の投稿

片貝の四尺玉は世界一を連呼する『片貝賛歌~希望の花~』を作詞しました!!

小論文 統計的因果推論の現場適用による排泄ケアの展望

論文 排泄ケアにおける尊厳の保持と社会システムの課題 ~「おむつ」をめぐる心理的・文化的考察~