2016-07-28 1 views
0

발생 주어진 수의 선택 행이 나는 등 내가 선택 어떻게 10 같은 숫자, 14 감안할 번호의 범위의 열 및 데이터범위 열이있는 데이터 프레임. 수

[1, 2, 3, ..., 10] | a | b 
[11, 12, 13, 14, ...] | c | d 

의 다음 더 열이있는 dataframe이 해당 숫자가 범위에있는 행, 즉 10에 대해 [1, 2, 3, ..., 10] | a | b 행이 반환되기를 원합니다.

지금까지 필자가 dfs dataframes의 사전이다 dfs['A'].ix[10 in dfs['A']['B']]을 시도 'A' 'B'는이 범위가 열인하는 dataframe이다.

어떻게하면됩니까?

답변

1

B을 통해 루프를 사용 apply 및 서브 세트에 대한 논리적 인덱스 반환 개별적으로 각각의 요소 확인 :

df = pd.DataFrame({"B": [list(range(1,11)), list(range(11,21))], "col1":["a", "b"], "col2":["c", "d"]}) 

df[df["B"].apply(lambda x: 10 in x)] 

#         B col1 col2 
# 0 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]  a  c 
1
df = pd.DataFrame({'ranges':[range(11), range(11,20)], 'dat1':['a','c'], 'dat2':['b','d']}) 
mask = df.ranges.apply(lambda x: 10 in x) 
df.ix[mask] 
관련 문제