2016-07-05 3 views
0

~ 1.0gb의 CSV 파일이 있는데 Excel로로드하려고하면 Excel이 충돌합니다. 파일의 스키마를 모르므로 R 또는 Python으로로드하기가 어렵습니다. 파일에는 레스토랑 리뷰가 포함되어 있으며 쉼표가 포함되어 있습니다.매우 큰 CSV 파일의 일부보기?

Windows 메모장이나 Excel에서 어떻게 파일의 일부만 열 수 있습니까 (예 : 첫 번째 100 행 또는 1.0MB 상당).

+2

한 가지 방법은 첫 번째 10 줄만 사용하여 복사본을 만드는 것입니다. linux 나 osx에서'head -100 FILENAME.csv> 100_LINES.csv'를 호출하고 새로운 파일을 열 수 있습니다 ... 파이썬 (질문에 파이썬 태그가 붙어 있습니다)을 사용하면 파일을 열어서 100 줄만 인쇄/쓰기 할 수 있습니다 그것들을 파일에 담아서 조사하면됩니다. – Dilettant

+0

이것은 실제로 파이썬 질문이 아니므로 태그 제거를 제안합니다.이 작업을 수행하는 운영 체제 도구는 직접 코딩하는 것보다 훨씬 우수합니다. –

답변

1

내 Excel 버전에서는 열린 대화 상자가 "많은 행을 읽음"옵션을 제공하지 않는 것 같아요. 줄에서 시작합니다. (헤더를 건너 뛴다 고 생각합니다).

그래서 당신은 당신의 플랫폼에서 손에는 헤드 바이너리가 없다, 그러나 당신의 케이스 (하드 행 일명 100 선을 코딩)해야합니다에 대한 간단한 작업 솔루션 파이썬 경우 :

#! /usr/bin/env python 
from __future__ import print_function 

import sys 

LINE_COUNT = 100 


def main(): 
    """Do the thing.""" 
    if len(sys.argv) != 3: 
     sys.exit("Usage: InFIle OutHead100File") 
    in_name, out_name = sys.argv[1:3] 
    print("Simple head(100)[%s] -> %s ..." % (in_name, out_name)) 
    with open(in_name, 'rt') as f_in, open(out_name, 'wt') as f_out: 
     for n in range(LINE_COUNT): 
      f_out.write(f_in.readline()) 

if __name__ == '__main__': 
    main() 

을 하나는 위를 부를 것이다 코드 (스크립트 파일 so_x_head_100.py에 저장하고 파일 100.csv에 복사 처음 100 개 행이 있어야 파일 huge.csv 주어진 가정) :

$ python2 ./so_x_head_100.py huge.csv 100.csv 
Simple head(100)[huge.csv] -> 100.csv ... 

그리고 지금 100.csv에서 거기는의 처음 100 선이를.

1

특정 행에 대해 좀 더 선택적 낚시를하려면 파이썬 csv 모듈을 사용하여 행 단위로 csv 파일을 파이썬 데이터 구조로 읽을 수 있습니다. 설명서를 참조하십시오.

첫 번째 백 줄만 잡으면 모든 행에서 비어 있기 때문에 많은 열에 대해 아무 것도 나타나지 않는 경우 유용 할 수 있습니다. 따라서 Python으로 프로그램을 작성하여 특정 열의 비어 있지 않은 데이터로 몇 개의 행을 찾아서 쓰는 것만큼 많은 행을 읽을 수 있습니다. 마찬가지로 특정 기준과 일치하는 데이터의 하위 집합을 분석하려는 경우 추가 행 분석을 위해 흥미로운 행을 모두 읽고 쓸 수 있습니다.

csv의 대안은 팬더입니다. 더 큰 학습 곡선이지만 큰 데이터 분석에 적합한 도구 일 것입니다. (1Gb는 요즘별로 크지 않다.)

+0

사용중인 컴퓨터에 대한 관리자 권한이 없습니다. 불행히도 파이썬에서 유용한 모듈을 설치하는 데 시간이 많이 걸렸습니다. 판다와 numpy. – blacksite

+1

컴퓨터에'virtualenv'가 설치되어 있습니까? 그렇다면 자신 만의 virtualenv를 설정하고 pip에서 필요한 Python을 설치하십시오. (virtualenv가 없으면 불평을합니다!) – nigel222

+0

나는 virtualenv를 이미 요청했습니다 ... 그것은 나의 상사에 따르면 "on it way"입니다. 나는 주말까지 그것을 가지고 있어야한다. 나를 신뢰해라, 나는 내가 나의 직업을 실제로하기 위해 virtualenv를 필요로했는지 명확히했다!! – blacksite

관련 문제