将分类变量转换为伪变量here,并将变量放入numpy.array中。例如:
data.csv:age,size,color_head
4,50,black
9,100,blonde
12,120,brown
17,160,black
18,180,brown
提取数据:import numpy as np
import pandas as pd
df = pd.read_csv('data.csv')
测向:
将分类变量color_head转换为伪变量:df_dummies = pd.get_dummies(df['color_head'])
del df_dummies[df_dummies.columns[-1]]
df_new = pd.concat([df, df_dummies], axis=1)
del df_new['color_head']
数据框新建:
把它放到numpy数组中:x = df_new.values
计算相关性:correlation_matrix = np.corrcoef(x.T)
print(correlation_matrix)
输出:array([[ 1. , 0.99574691, -0.23658011, -0.28975028],
[ 0.99574691, 1. , -0.30318496, -0.24026862],
[-0.23658011, -0.30318496, 1. , -0.40824829],
[-0.28975028, -0.24026862, -0.40824829, 1. ]])
见: