반응형
나는 원을 그리며 여러 가지 방법을 시도했기 때문에 내 핵심 이해가 잘못된 것 같습니다. 인코딩 / 디코딩 문제를 이해하는 데 도움을 주시면 감사하겠습니다.
SQL에서 데이터 프레임을 가져 왔는데 일부 데이터 유형 : float64가 Object로 변환 된 것 같습니다. 따라서 나는 어떤 계산도 할 수 없습니다. Object를 다시 float64로 변환하지 못했습니다.
df.head ()
Date WD Manpower 2nd CTR 2ndU T1 T2 T3 T4
2013/4/6 6 NaN 2,645 5.27% 0.29 407 533 454 368
2013/4/7 7 NaN 2,118 5.89% 0.31 257 659 583 369
2013/4/13 6 NaN 2,470 5.38% 0.29 354 531 473 383
2013/4/14 7 NaN 2,033 6.77% 0.37 396 748 681 458
2013/4/20 6 NaN 2,690 5.38% 0.29 361 528 541 381
df.dtypes
WD float64
Manpower float64
2nd object
CTR object
2ndU float64
T1 object
T2 object
T3 object
T4 object
T5 object
dtype: object
SQL 테이블 :
해결 방법
In [36]:
df = df.convert_objects(convert_numeric=True)
df.dtypes
Out[36]:
Date object
WD int64
Manpower float64
2nd object
CTR object
2ndU float64
T1 int64
T2 int64
T3 int64
T4 float64
dtype: object
In [39]:
df['2nd'] = df['2nd'].str.replace(',','').astype(int)
df['CTR'] = df['CTR'].str.replace('%','').astype(np.float64)
df.dtypes
Out[39]:
Date object
WD int64
Manpower float64
2nd int32
CTR float64
2ndU float64
T1 int64
T2 int64
T3 int64
T4 object
dtype: object
In [40]:
df.head()
Out[40]:
Date WD Manpower 2nd CTR 2ndU T1 T2 T3 T4
0 2013/4/6 6 NaN 2645 5.27 0.29 407 533 454 368
1 2013/4/7 7 NaN 2118 5.89 0.31 257 659 583 369
2 2013/4/13 6 NaN 2470 5.38 0.29 354 531 473 383
3 2013/4/14 7 NaN 2033 6.77 0.37 396 748 681 458
4 2013/4/20 6 NaN 2690 5.38 0.29 361 528 541 381
또는 astype
을 호출하지 않고 위의 문자열 처리 작업을 수행 한 다음 convert_objects
를 호출하여 모든 것을 한 번에 변환 할 수 있습니다.
업데이트
버전 0.17.0
convert_objects
는 더 이상 사용되지 않으며이를 수행하는 최상위 함수가 없으므로 다음을 수행해야합니다.
df.apply (lambda col : pd.to_numeric (col, errors = 'coerce'))
참조 페이지 https://stackoverflow.com/questions/28277137
반응형
'파이썬' 카테고리의 다른 글
파이썬 Angles between two n-dimensional vectors in Python (0) | 2020.12.01 |
---|---|
파이썬 개체를 만들고 속성을 추가하려면 어떻게해야합니까? (0) | 2020.11.30 |
파이썬 목록 당 하나의 새 행인 Python csv 파일에 목록 작성 (0) | 2020.11.30 |
파이썬 Python-Windows에서 pip.ini 또는 pip.conf를 찾을 수 없음 (0) | 2020.11.30 |
파이썬 Python subprocess.Popen () 완료 대기 (0) | 2020.11.30 |
댓글