내가 가진 내가 DF2 dataframes SYM1 열에서 sym2 열 값을 사용할 수 여부를 확인하려면한 데이터 프레임의 열 값을 확인하거나 다른 데이터 프레임의 열을 확인하는 방법은 무엇입니까?
sym1
0 abc a01
1 pqr q02
2 xyz y03
3 mno o12
4 lmn l45
sym2
0 abc a01
1 xxx p0
2 xyz y03
3 mno o12
4 lmn l45
5 rrr r1
6 kkk k3
출력 -
df1_data = {'sym1' :{0:'abc a01',1:'pqr q02',2:'xyz y03',3:'mno o12',4:'lmn l45'}}
df1 = pd.DataFrame(df1_data)
print df1
df2_data = {'sym2' :{0:'abc a01',1:'xxx p0',2:'xyz y03',3:'mno o12',4:'lmn l45',5:'rrr r1',6:'kkk k3'}}
df2 = pd.DataFrame(df2_data)
print df2
이 dataframes-
. sym2 열의 기호를 사용할 수없는 경우 sym1 열에서 사용할 수없는 기호 목록을 원합니다. 모든 기호를 사용할 수 있으면 목록이 비어 있어야합니다.
예상 결과 -
list -> ['xxx p0','rrr r1','kkk k3']
. 나는이 목록을 사용하고있다. (df2 [~ df2.sym2.isin (df1.sym1)]. sym2). 빠른 실행과 비교할 때 어느 것이 가장 좋습니까? – kit
그것은 동일합니다 :'123 : % timeit ((df2.ix [~ df2.sym2.isin (df1.sym1), 'sym2']. tolist()))' '100 개의 루프, 3의 최상 : 루프 당 3.22 msec ' - '[124]에서 : % timeit (list (df2.ix [df2.sym2.isin (df1.sym1),'sym2 ']))' ' 3 : 루프 당 3.22 msec @ – jezrael
@ jezrael- ok 다시 한번 감사드립니다. – kit