다음과 같이 구성된 문서 모음이 있습니다.
[{
"id_":abc,
"username":"John",
"data":{
"phone_number":"+123",
"address":"street 1"
}
},
{
"id_":def,
"username":"Marie",
"data":{
"phone_number":"+456",
"address":"street 2"
}
}]
팬더 데이터 프레임에있는 모든 전화 번호를 얻고 싶습니다. 현재 저는 다음을 수행하고 있습니다.
resp=collection.find({},{'data.phone_number':1,'_id':0})
df=pd.DataFrame(list(map(lambda x: x['data'],list(resp))))
이것을 수행하는 더 자연스러운 방법이 있습니까?
전화 번호가 고유 경우에 당신은 사용할 수있는 별개의
numbers = collection.distinct('data.phone_number')
df=pd.DataFrame(numbers, columns = ['phone_number'])
고유하지 않은 경우 더 나은 방법은 없습니다. 집계 파이프 라인으로 비슷한 결과를 얻을 수 있지만 실제로 성능이 향상되지는 않습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다