2017-01-17 9 views
1

내 데이터의 행을 필터링하려고 시도 할 때 첫 번째 문자 N 다음에 숫자를 매치 한 다음이 기준과 일치하지 않는 행을 삭제해야합니다.python pandas 행 startswith 한 글자 하나의 숫자 와일드 카드

I에 유래에서 여러 정규식 조합을 시도했다하지만 그들은 정규 표현식에 맞게 제대로

new = new.loc[new['call_x'].str.startswith("^[N]{1}[0-9]+")] 

Example data 
N902AG #keep 
N917GA #keep 
N918PD #keep 
N919PD #keep 
N930EN #keep 
N940CL #keep 
N976TR #keep 
N98AW #keep 
NAX6700 #drop 
NAX7019 #drop 
NKS1028 #drop 
NKS171 #drop 
NKS174 #drop 
NKS197 #drop 
+1

내가 생각 해달라고'str.startswith'는 정규 표현식을 받아들입니다. 대신're' 패키지를 사용해야합니다 : https://docs.python.org/2/library/re.html – BloodyD

+0

팬더를 사용하는 것처럼 보입니다. 'pandas' 태그를 추가하는 것은 정말로 중요합니다. – gzc

+0

@ gzc gzc에게 감사드립니다. 내 부분에 대한 감독이 추가되었습니다. – sn4ke

답변

0

이 시도 :

df[df.Example.str.match('^N\d+')] 
+0

이 코드는 질문에 대답 할 수 있지만 문제의 설명과 코드가 주어진 문제를 해결하는 방법을 포함하는 것이 좋습니다. 미래를 위해, 여기에 몇 가지 정보, [멋진 답변을 해킹하는 방법] (http://stackoverflow.com/help/how-to-answer)에 스택 오버플로가 있습니다. – dirtydanee