Plotly 中的相关矩阵
Correlation matrix in Plotly
我正在做 Spotify 数据分析。我想使用 Plotly 创建一个相关矩阵。我的示例数据框如下(数据框名称为 'df')
我使用以下代码创建了一个相关矩阵
import plotly.offline as pyo
import plotly.express as px
import plotly.graph_objs as go
import numpy as np
import pandas as pd
trace = go.Heatmap(z=df.values,x=df.index.values,y=df.columns.values,colorscale='RdBu_r',
zmax=1,zmin=-1,text=corr.values)
fig = go.Figure(data=[trace])
pyo.plot(fig)
fig.show()
低于输出
我需要得到一个清晰的相关矩阵输出,谁能告诉我如何在 Plotly 中做到这一点?无法修复上述代码以获得正确的输出
我想我们可以在pandas中使用df.corr()
来计算相关系数并制作它的热图。
import plotly.graph_objects as go
import random
import numpy as np
df = pd.DataFrame({'danceability': np.random.rand(100),
'energy': np.random.rand(100),
'loudness': np.random.rand(100),
'mode': random.choices([0,1], k=100)})
df_corr = df.corr()
print(df_corr)
danceability energy loudness mode
danceability 1.000000 0.061570 0.048222 -0.060654
energy 0.061570 1.000000 0.019930 0.042376
loudness 0.048222 0.019930 1.000000 -0.044294
mode -0.060654 0.042376 -0.044294 1.000000
fig = go.Figure()
fig.add_trace(
go.Heatmap(
x = df_corr.columns,
y = df_corr.index,
z = np.array(df_corr),
text=df_corr.values,
texttemplate='%{text:.2f}'
)
)
fig.show()
我正在做 Spotify 数据分析。我想使用 Plotly 创建一个相关矩阵。我的示例数据框如下(数据框名称为 'df')
我使用以下代码创建了一个相关矩阵
import plotly.offline as pyo
import plotly.express as px
import plotly.graph_objs as go
import numpy as np
import pandas as pd
trace = go.Heatmap(z=df.values,x=df.index.values,y=df.columns.values,colorscale='RdBu_r',
zmax=1,zmin=-1,text=corr.values)
fig = go.Figure(data=[trace])
pyo.plot(fig)
fig.show()
低于输出
我需要得到一个清晰的相关矩阵输出,谁能告诉我如何在 Plotly 中做到这一点?无法修复上述代码以获得正确的输出
我想我们可以在pandas中使用df.corr()
来计算相关系数并制作它的热图。
import plotly.graph_objects as go
import random
import numpy as np
df = pd.DataFrame({'danceability': np.random.rand(100),
'energy': np.random.rand(100),
'loudness': np.random.rand(100),
'mode': random.choices([0,1], k=100)})
df_corr = df.corr()
print(df_corr)
danceability energy loudness mode
danceability 1.000000 0.061570 0.048222 -0.060654
energy 0.061570 1.000000 0.019930 0.042376
loudness 0.048222 0.019930 1.000000 -0.044294
mode -0.060654 0.042376 -0.044294 1.000000
fig = go.Figure()
fig.add_trace(
go.Heatmap(
x = df_corr.columns,
y = df_corr.index,
z = np.array(df_corr),
text=df_corr.values,
texttemplate='%{text:.2f}'
)
)
fig.show()