2013-05-11 4 views
2

확인을 떠, 그래서 난 CSV 파일에서로드 NumPy와 배열을, 배열 보인다 : 나는 떠 배열 요소를 변환하고 싶지만NumPy와의 CSV에서 가져 오기 및 열 변환은

array([['0', '3', '22', ..., '7.25', '1', '0'], 
     ['1', '1', '38', ..., '71.2833', '0', '0'], 
     ['1', '3', '26', ..., '7.925', '1', '0'], 
     ..., 
     ['0', '3', '', ..., '23.45', '1', '0'], 
     ['1', '1', '26', ..., '30', '0', '0'], 
     ['0', '3', '32', ..., '7.75', '0', '0']], 
     dtype='|S8') 

전 이 오류가 있습니다.

data2 = np.array(data).astype(np.float) 

Traceback (most recent call last): 
    File "<input>", line 1, in <module> 
ValueError: could not convert string to float: 

numpy 또는 pandas로이 문제를 해결할 방법이 있습니까?

+0

난 당신이 문제의 루트에 보일 것입니다 생각합니다. 이것은 이것을 한꺼번에 처리하고 수레로 읽을 수 있어야하기 때문입니다. CSV 파일의 모양을 추출 할 수 있습니까? – joris

답변

1

문제는 Numpy 또는 일반적으로 데이터가 아닌 특정 값입니다. 문제를 일으키는 빈 문자열이라고 생각합니다. float로 ''을 나타내는 방법은 없습니다.

3

배열에 빈 문자열 ('')이 있다고 생각합니다. 배열의 ''0으로 변경하십시오.

배열을 가정 a입니다 : 당신이 CSV 파일에 읽기 방법 :

>>> a[a=='']='0' 
>>> a2 = a.astype(np.float) 
관련 문제