Traceback (most recent call last):
File "C:/Users/qinjianing/PycharmProjects/pythonProject1/match.py", line 39, in <module>
m.match(caliper = None, replace = False)
File "C:\Users\qinjianing\PycharmProjects\pythonProject1\venv\lib\site-packages\psmatching\match.py", line 99, in match
dist = abs(g1[m]-g2)
File "C:\Users\qinjianing\PycharmProjects\pythonProject1\venv\lib\site-packages\pandas\core\series.py", line 942, in __getitem__
return self._get_value(key)
File "C:\Users\qinjianing\PycharmProjects\pythonProject1\venv\lib\site-packages\pandas\core\series.py", line 1051, in _get_value
loc = self.index.get_loc(label)
File "C:\Users\qinjianing\PycharmProjects\pythonProject1\venv\lib\site-packages\pandas\core\indexes\base.py", line 3363, in get_loc
raise KeyError(key) from err
KeyError: 17795
原始脚本如下:
```python
import psmatching.match as psm
import pytest
import pandas as pd
path = "simMATCH2.csv"
model = "CASE ~ AGE + SCORE"
k = "2"
m = psm.PSMatch(path, model, k)
# Calculate propensity scores and prepare data for matching
m.prepare_data()
# Perform matching
m.match(caliper = None, replace = False)
# Evaluate matches via chi-square test
m.evaluate()
# 一些数据
a = m.df # 打上PROPENSITY 潜力分
m.df['CASE'].value_counts()
b = m.matched_data # 匹配之后的数据对
m.matched_data['CASE'].value_counts()
这个提示, 看起来像是要找某个键值,可能是数据列名
如果代码来源是没问题的话, 看看csv数据和示范数据是否一致。
另外,要确保你当前python的相关库和代码要的库版本一致。
相同问题,原因是因为csv数据某个键值与目标数据名称不匹配,修改即可
你好,解决了嘛?我也有这个问题
我也遇到了这个问题,请问大家有谁顺利解决了吗?
应该是你虚拟环境的pandas版本问题