ฉันมีดาต้าเฟรมแพนด้าต่อไปนี้Top15
:
ฉันสร้างคอลัมน์ที่ประมาณจำนวนเอกสารอ้างอิงต่อคน:
Top15['PopEst'] = Top15['Energy Supply'] / Top15['Energy Supply per Capita']
Top15['Citable docs per Capita'] = Top15['Citable documents'] / Top15['PopEst']
ฉันต้องการทราบความสัมพันธ์ระหว่างจำนวนเอกสารอ้างอิงต่อหัวกับปริมาณพลังงานต่อหัว ดังนั้นฉันจึงใช้.corr()
วิธี (สหสัมพันธ์ของเพียร์สัน):
data = Top15[['Citable docs per Capita','Energy Supply per Capita']]
correlation = data.corr(method='pearson')
ฉันต้องการส่งคืนหมายเลขเดียว แต่ผลลัพธ์คือ:
.corr
โดยตรงกับดาต้าเฟรมของคุณมันจะส่งกลับความสัมพันธ์แบบคู่ทั้งหมด นั่นเป็นเหตุผลที่คุณสังเกต 1s ที่เส้นทแยงมุมของเมทริกซ์ของคุณ (แต่ละคอลัมน์มีความสัมพันธ์อย่างสมบูรณ์กับตัวมันเอง) ดูการแก้ไขของฉันด้านล่าง