팬더 데이터 프레임이 있는데 사전에 각 acct_id_adj 번호를 추가하고 메모를 통해 해당 ID와 연결된 모든 전화 번호를 검색하려고합니다.사전에 할당하는 "KeyError : 2L"로 실행
Example of the dataframe
Index RowNum acct_id_adj NOTE_DT NOTE_TXT
0 1 A20000000113301111 5/2/2017 t/5042222222 lm w/ 3rd jn
1 2 A20000000038002222 5/4/2017 OB CallLeft Message
3 4 A20000000107303333 5/4/2017 8211116411 FOR $18490 MLF
import pandas
import re
PhNum = pandas.read_csv('C:/PhoneNumberSearch.csv')
PhNum = PhNum[PhNum['NOTE_TXT'].notnull()]
D = {}
#for i in xrange(PhNum.shape[0]):
for i in xrange(3):
ID = PhNum['acct_id_adj'][i]
Note = re.sub(r'\W+', ' ', PhNum['NOTE_TXT'][i])
print(Note)
Numbers = [int(s) for s in Note.split() if s.isdigit()]
print(Numbers)
for j in xrange(len(Numbers)):
if Numbers[j] > 1000000000:
D[ID] = Numbers[j]
print(D)
Out = pandas.DataFrame(D.items(), columns=['acct_id_adj', 'Phone_Number'])
그러나, 제 3 열에서 I 오류로 실행 보관 'KeyError를 : 2L를 "ID = PhNum ['acct_id_adj '] [I]에서. 좋은 문서를 찾지 못했고 그때까지 문제가 발생하기를 기다리는 이유를 알 수 없습니다.
이 오류의 원인이 될지 또는 사전을 잘못된 방식으로 생각하는지에 대해 모든 도움을 주시면 감사하겠습니다.
전체 추적을 게시하십시오. –
PhNum [ 'acct_id_adj'] [2]'를 찾고 있기 때문에 그럴 수 있습니다. 그러나 그 숫자 중 두 번째 숫자가 Index 열에 들어 있습니다. 나는 당신의 행이 0, 1, 3 번으로 번호가 매겨져 있음을 알아 차렸다. 그래서 틀린 것일 수있다. – bouteillebleu