如何使用折线图以图形方式显示两个变量之间的相关性(来自同一 DataFrame 的两列)
Posted
技术标签:
【中文标题】如何使用折线图以图形方式显示两个变量之间的相关性(来自同一 DataFrame 的两列)【英文标题】:How to use line chart to graphically show the correlation between two variables ( two columns from a same DataFrame) 【发布时间】:2021-12-01 00:33:31 【问题描述】:我试图通过使用 折线图 以图形方式显示两个变量(来自同一 DataFrame(df) 的两列)之间是否存在相关性。我已经检查了这两列之间是否存在相关性(使用df.corr()
方法)并找到了一个值(-0.986)。但是,我想知道如何使用折线图查看它。
# Set variables for columns
x = df['mark'] #[92,92,32,95] #sampledata
y = df['time'] #[130,120,175,120](minutes) #sampledata
#display correlation between all columns in the dataFrame
print(df.corr())
#Select the correlation between the columns
df_corr = pd.DataFrame(df1[[x, y]].corr()).round(2)
plt.plot(df_corr,'--')
我得到: 我不明白。
【问题讨论】:
我不明白折线图如何为您提供有关 2 个变量之间相关性的信息。在您的图表中,两个变量之间的相关性为 0.84。在每个角落,您都有一个来自相关矩阵的值 1 = (var1, var1), 0.84 = (var1, var2) 和相互 如果你想要一条线,那么你应该做一个回归。对于.corr
,热图是正确的选择。
好的,谢谢,也许是我不明白我需要做什么。我正在以初学者的身份从事一个项目,有一个问题是,在创建数据框之后,我必须>.
【参考方案1】:
使用seaborn.heatmap
:
# Python env: pip install seaborn
# Anaconda env: conda install seaborn
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
df = pd.DataFrame('mark': [92,92,32,95], 'time': [130,120,175,120])
sns.heatmap(df.corr().round(2))
plt.show()
【讨论】:
以上是关于如何使用折线图以图形方式显示两个变量之间的相关性(来自同一 DataFrame 的两列)的主要内容,如果未能解决你的问题,请参考以下文章