2017-12-28 1 views
0

거대한 CSV 파일 데이터를 mongodb에 복사 중입니다. 나는 지금 csv에 전적으로 5 개의 열을 가지고 있는데, 'timestamp'라는 새로운 필드를 추가하고 싶다. current_time (date cmd output).MongoDB 모든 레코드에 대해 새로운/업데이트 필드 타임 스탬프 추가

mongodb에 삽입하기 전에 또는 삽입하는 동안이 작업을 수행하는 가장 좋은 방법은 무엇입니까? https://gist.github.com/mprajwala/849b5909f5b881c8ce6a

내가 뭘해야하는 것은 :

A  B   C  D  E   
Jack 08/03/1865 Yes City1 Company1 
Sam 07/11/1881 Yes City2 Company1 
Lina 18/02/1990 No  City3 Company1 

내가 원하는 것은 : 내가 DB에 기록하는 코드 아래 거의 유사한 사용하고

A  B   C  D  E   Timestamp 
Jack 08/03/1865 Yes City1 Company1 1514446225 
Sam 07/11/1881 Yes City2 Company1 1514446225 
Lina 18/02/1990 No  City3 Company1 1514446225 

답변

0

경우 코드는 예제 코드를 기반으로합니다. 데이터를 저장하기 전에 data_json을 업데이트 할 수 있습니다 (그게 최선의 방법이라고 생각합니다).

...  
    data = pd.read_csv(file_res) 
    data_json = json.loads(data.to_json(orient='records')) 
    for doc in data_json: 
     doc['timestamp'] = timestamp 
    db_cm.remove() 
    db_cm.insert(data_json) 
+0

각 행을 읽은 다음 삽입하거나 몽고 db에 삽입하기 전에 csv를 읽고 다른 열을 추가하는 것이 더 낫습니까? 동일한 값을 사용하여 각 행의 csv에 새 열을 추가 할 수 있습니까? – Rachel

+0

기본적으로 json.loads()에 대해 timestamp now()를 추가 할 수 있습니다. – Rachel

관련 문제