我用python创建了空间马尔可夫矩阵,但是我得到了这个错误(AttributeError:'DataFrame'对象没有属性'flant')。我对python不熟悉,希望能帮我解决这个问题? 代码是
import numpy as np
import pysal`enter code here`
import pandas as pd
import pysal as ps
f = pd.read_csv("C:\\Users\\Yousif\\Desktop\\Spatial.MC\\updated_testdata1-36-Copy.csv")
f
pci = f[list(map(str,range(1, 1096)))]
#f = ps.open(ps.examples.get_path("usjoin36.csv"))
#f
#pci = np.array([f.by_col[str(y)] for y in range(1,1096)])
pci = pci.transpose()
rpci = pci/(pci.mean(axis=0))
#w = ps.open(ps.examples.get_path("states36.gal")).read()
w = ps.open("C:/Users/Yousif/Desktop/Spatial.MC/states-36-Copy.gal").read( )
w.transform = 'r'
sm = ps.Spatial_Markov(rpci, w, fixed=True, k=5, variable_name='rpci')
for p in sm.P:
print(p)
当您传递pandas数据帧时,
ps.Spatial_Markov
似乎需要一个numpy数组。尝试通过修改这一行从数据帧中提取数组更新
实际上,docs是非常具体的:
相关问题 更多 >
编程相关推荐