Python KeyError:';无法使用单个bool索引到setitem';

Python KeyError:';无法使用单个bool索引到setitem';,python,dataframe,Python,Dataframe,我正在尝试使用以下代码设置数据帧“df”中名为“barony2”的列的值,如果该列的“add_郊区”列包含ref_文件的当前iterrows“Townland”值 df = pd.read_csv('a.csv') ref_file = pd.read_csv('b.csv') for index, row in ref_file.iterrows(): cond = str(row['Townland']) in df.add_suburb df.loc[cond, 'bar

我正在尝试使用以下代码设置数据帧“df”中名为“barony2”的列的值,如果该列的“add_郊区”列包含ref_文件的当前iterrows“Townland”值

df = pd.read_csv('a.csv')
ref_file = pd.read_csv('b.csv')

for index, row in ref_file.iterrows():
    cond = str(row['Townland']) in df.add_suburb
    df.loc[cond, 'barony2'] = str(row['Barony'])
我得到
KeyError:“无法使用单个bool索引到setitem”
非常感谢您的帮助

Traceback (most recent call last):
  File "C:/Users/saiki/PycharmProjects/webcrawl/edit_address2.py", line 46, in <module>
    import_encounters2()
  File "C:/Users/saiki/PycharmProjects/webcrawl/edit_address2.py", line 20, in import_encounters2
    df.loc[cond, 'barony2'] = str(row['Barony'])
  File "C:\Python27\lib\site-packages\pandas\core\indexing.py", line 132, in __setitem__
    self._setitem_with_indexer(indexer, value)
  File "C:\Python27\lib\site-packages\pandas\core\indexing.py", line 263, in _setitem_with_indexer
    key, _ = convert_missing_indexer(idx)
  File "C:\Python27\lib\site-packages\pandas\core\indexing.py", line 1824, in convert_missing_indexer
    raise KeyError("cannot use a single bool to index into setitem")
KeyError: 'cannot use a single bool to index into setitem'
回溯(最近一次呼叫最后一次):
文件“C:/Users/saiki/PycharmProjects/webcrawl/edit_address2.py”,第46行,在
导入遇到的问题2()
文件“C:/Users/saiki/PycharmProjects/webcrawl/edit_address2.py”,第20行,在import_encounters2中
df.loc[cond,'Barony 2']=str(第['Barony'行])
文件“C:\Python27\lib\site packages\pandas\core\index.py”,第132行,在uu setitem中__
self.\u setitem\u和索引器(索引器,值)
文件“C:\Python27\lib\site packages\pandas\core\index.py”,第263行,在带有索引器的\u setitem\u中
键,\=转换\缺少\索引器(idx)
转换索引器中的文件“C:\Python27\lib\site packages\pandas\core\index.py”,第1824行
raise KeyError(“无法使用单个bool索引到setitem”)
KeyError:“无法使用单个布尔索引到集合项”

cond
为真或假,使用语句中的
进行设置。你期望它是什么?是的,但我想知道为什么df.loc[cond,'barony2']=str(row['Barony'])在cdarkeIt中不起作用。我不清楚哪一行给了你错误。请将准确的错误和回溯作为问题的一部分。很抱歉,cdarke,df.add_郊区中更新的nowcond=str(row['Townland'])始终为false,即使该值在df.add_郊区中