Pandas에서 dtype 객체는 객체를 포함하는 열을 나타냅니다. 그러나 열의 모든 요소가 문자열로 나타나면 혼란스러울 수 있습니다.
객체 dtype은 NumPy의 ndarray 구현에서 유래합니다. NumPy에서 배열은 바이트 단위로 균일한 크기의 요소를 가져야 합니다. 문자열은 가변 길이를 가지므로 Pandas는 문자열을 객체 ndarray의 객체에 대한 포인터로 저장합니다. 결과적으로 dtype 객체가 생성됩니다.
다음 예를 고려하세요.
import numpy as np import pandas as pd # Create an int64 ndarray int_arr = np.array([1, 2, 3, 4], dtype=np.int64) # Create an object ndarray containing pointers to string objects obj_arr = np.array(['a', 'b', 'c', 'd'], dtype=object) # Convert obj_arr to a Pandas DataFrame df = pd.DataFrame({'int_col': int_arr, 'obj_col': obj_arr}) # Check data types print(df.dtypes)
출력:
int_col int64 obj_col object
보시다시피 , 모든 요소가 문자열임에도 불구하고 obj_col은 ndarray의 포인터 사용으로 인해 dtype 객체를 갖습니다.
Pandas DataFrames의 dtype 객체는 기본 ndarray 구현에서 발생합니다. 문자열을 포함하지만 문자열이 별도의 데이터 유형으로 명시적으로 표현되지 않는다는 점에 유의하는 것이 중요합니다. 대신, 객체 ndarray 내의 객체에 대한 포인터로 저장됩니다.
위 내용은 문자열만 있는 Pandas DataFrame 열에 개체 Dtype이 있는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!