numpy.genfromtxt
을 사용하여 txt 파일에서 ndarray
을 만들었습니다.numpy.genfromtxt를 사용하여 ndarray에 열 삽입
data = np.genfromtxt(fname,
skip_header =1,
dtype = [('X','f'),('Y','f'),('Z','f'),('V', 'i'),('T', 'i')],
usecols = (0,1,2,4,5))
내가 지금 4 열 (나는 V
라는 하나) 복제하고 직후에 배치하려고 : 나는으로 데이터를 읽어 실행하고
2505000
10.316 1.936 0.025 0 15 0 0
10.316 1.937 0.028 0 15 0 0
10.316 1.943 0.028 0 15 0 0
10.316 1.954 0.022 0 9 58 0
10.316 1.955 0.026 0 9 58 0
:처럼 txt 파일 보인다 그 자체 (마지막으로 T
열 앞에).
data['V']
을 수행하여 열을 복사 할 수 있지만이 복사본을 V
과 T
(4 번째 및 5 번째 열) 사이에 어떻게 삽입합니까? numpy.insert
을 살펴 보았지만 인덱스 (obj
인수)를 지정하는 방법을 모르겠습니다. 나는 운이없는 numpy.insert(data_copy, data_copy['T'],data_copy['V'])
으로 시도했다 (나는 IndexError: index 61 is out of bounds for size 20
를 받았다).
당신은 추가 된 필드와 새로운 DTYPE을해야하고, 원래 배열에서 필드 이름에 값을 복사 새로운 것. – hpaulj
'from numpy.lib import recfunctions'을보십시오. http://stackoverflow.com/a/27952861/901925 – hpaulj
@ hpaulj 덕분에, 필자는 삽입 위치를 지정할 수는 없지만 recfunctions.append_fields 및 recfunctions.drop_fields를 결합하여 해결했습니다. 다른 솔루션이 나오지 않고 답글로 의견을 보내려는 경우 기꺼이 받아들입니다. – umbe1987