2017-01-27 5 views
4

dbf 파일을 읽고 ArcGIS shapefile 파일을 pandas 데이터 프레임으로 덤프하고 싶습니다. 현재 dbf 패키지를 사용 중입니다.팬더 : dbf 테이블을 데이터 프레임으로 변환

dbf 파일을 테이블로로드 할 수는 있지만 파일을 구문 분석하고 팬더 데이터 프레임으로 변환하는 방법을 알아낼 수 없었습니다. 어떻게 할 수 있습니까? 나는에 붙어

이된다

dbf.ver_2.Table('C:\\Users\\myfolder\\project\\myfile.dbf', status='read-only')


:

import dbf 
thisTable = dbf.Table('C:\\Users\\myfolder\\project\\myfile.dbf') 
thisTable.open(mode='read-only') 

파이썬은 내가 솔직히으로 만들 모르는 출력으로이 문을 반환

EDIT

내 원래 샘플,768,:

FID Shape E    N 
0  Point 90089.518711 -201738.245555 
1  Point 93961.324059 -200676.766517 
2  Point 97836.321204 -199614.270439 
... ...  ...   ... 
+0

을 수행 할 수 있습니까? –

+0

@FabioLamanna 제 편집을 확인하십시오. 감사. – FaCoffee

+1

@ CF84, [이 기사] (http://joelmccune.com/arcgis-to-pandas-data-frame/) – MaxU

답변

6

당신은 simpledbf을 살펴해야한다는 :

In [2]: import pandas as pd 

In [3]: from simpledbf import Dbf5 

In [4]: dbf = Dbf5('test.dbf') 

In [5]: df = dbf.to_dataframe() 

이 조금 샘플 .dbf 파일과 나를 위해 작동합니다. 희망이 도움이됩니다.

+1

매우 깔끔한 답변으로 한 줄에 바로 사용할 수있는 테이블을 쉽게 얻을 수 있도록하기 위해 수행되었습니다! – MaxU

+0

@FabioLamanna'FID' 필드가'df '로 읽히지 않는 이유는 무엇입니까? 본질적으로, 내가 보는 모든 것은 단지'E'와'N' 필드입니다. 모든 * 필드를 읽는 방법을 확인 하시겠습니까? – FaCoffee

+0

@ CF84 어쩌면 그것은 DataFrame의 인덱스로 간주됩니까? –