2017-12-14 8 views
0

행 주요 텍스트 데이터 파일을 numpy로로드하는 방법은 무엇입니까?numpy로 텍스트 파일에서 행 주요 데이터를로드하는 방법

loadtxt(..) 함수는 열 길이를로드합니다. 즉, 데이터는 첫 번째 행의 이름 아래 행에 있습니다. 이름이 첫 번째 열과 다음 열의 데이터에로드 할 수있는 방법은 무엇입니까? 주요

행 :

field 1: d1, d2, d3, ... 
field 2: d1, d2, d3, ... 
field n: ... 
+0

열 전공을로드 한 후 조 변경하면 오크일까요? – Dark

+0

이것은 모든'---'및'|'문자가있는 실제 데이터 예입니까? – kazemakase

+0

@Dark 이것은 이론 상으로는 작동하지만,'loadtxt (...) '나 numpy에서 찾을 수있는 다른 로더에 의해 불행히도 지원되지 않습니다. – James

답변

0

매개 변수 unpack=True이 작업을 수행합니다.

True 인 경우 반환 된 배열은 x, y, z = loadtxt (...)를 사용하여 인수의 압축을 풀 수 있도록 전치됩니다. 구조화 된 데이터 유형과 함께 사용하면 각 필드에 대해 배열이 반환됩니다. 기본값은 False입니다.

트랜스 포션 만 필요한 경우 실제로 압축을 풀 필요가 없습니다. arr = np.loadtxt(file, unpack=False) 반환 한 전치 배열,

예 : 기본 동작

>>> from io import StringIO 
>>> file = StringIO("0 1 2\n3 4 5") 
>>> np.loadtxt(file) 
array([[ 0., 1., 2.], 
     [ 3., 4., 5.]]) 

이, 당신의 유스 케이스가 더 나은 pandas.read_csv에 의해 제공 될 가능성이 있습니다 또한 unpack=True

>>> file = StringIO("0 1 2\n3 4 5") 
>>> np.loadtxt(file, unpack=True) 
array([[ 0., 3.], 
     [ 1., 4.], 
     [ 2., 5.]]) 

에 비교 데이터를 DataFrame으로 작업합니다.