from pandas import DataFrame,Series
import pandas as pd
import numpy as np
import math
当X和Y为log()关系时:
@python
x=Series(np.arange(1,20))
y=x.apply(lambda x:math.log2(x))
conc=pd.concat([x,y],axis=1,keys=['x','y'])
conc.plot.scatter(x='x',y='y')
output:
x y x 1.000000 0.932732 y 0.932732 1.000000
当X和Y为exp()关系时:
x y x 1.000000 0.551002 y 0.551002 1.000000
当X和Y为多项式关系时:
一次线性多项式:
@python
x=np.arange(1,20)
y=np.arange(1,20)
z=np.add(x,y)
x=Series(x)
y=Series(y)
z=Series(z)
conc=pd.concat([x,z],axis=1,keys=['x','z'])
output:
x z x 1.0 1.0 z 1.0 1.0
一次项与指数项线性组合:
@python
x=np.arange(1,20)
y=np.exp(x)
z=np.add(x,y)
x=Series(x)
y=Series(y)
z=Series(z)
conc=pd.concat([x,z],axis=1,keys=['x','z'])
output:
x z x 1.000000 0.551002 z 0.551002 1.000000
一次项与对数项线性组合:
@python
x=np.arange(1,20)
y=np.log2(x)
z=np.add(x,y)
x=Series(x)
y=Series(y)
z=Series(z)
conc=pd.concat([x,z],axis=1,keys=['x','z'])
print(conc.corr())
output:
x z x 1.000000 0.998049 z 0.998049 1.000000
指数项与对数项线性组合:
@python
x=np.exp(np.arange(1,20))
y=np.log2(x)
z=np.add(x,y)
x=Series(x)
y=Series(y)
z=Series(z)
conc=pd.concat([x,z],axis=1,keys=['x','z'])
print(conc.corr())
output:
x z x 1.0 1.0 z 1.0 1.0