판다에서 dtype('O')은 무엇입니까?
저는 판다의 데이터 프레임을 가지고 있고 판다의 값의 종류가 무엇인지 알아내려고 노력하고 있습니다.열 유형이 무엇인지 잘 모르겠습니다.'Test'
하지만, 내가 달릴 때myFrame['Test'].dtype
알겠습니다;
dtype('O')
이것은 무엇을 의미합니까?
의미:
'O' (Python) objects
출처.
첫 번째 문자는 데이터 종류를 지정하고 나머지 문자는 항목당 바이트 수를 지정합니다. 단, 유니코드는 문자 수로 해석됩니다.항목 크기가 기존 유형과 일치해야 합니다. 그렇지 않으면 오류가 발생합니다.지원되는 종류가 기존 유형에 해당하지 않으면 오류가 발생합니다.지원되는 종류는 다음과 같습니다.
'b' boolean
'i' (signed) integer
'u' unsigned integer
'f' floating-point
'c' complex-floating point
'O' (Python) objects
'S', 'a' (byte-)string
'U' Unicode
'V' raw data (void)
확인이 필요한 경우 다른 답변이 도움이 됩니다.type
s.
보면은dtype('O')
데이터 프레임 내부에서 이것은 판다 문자열을 의미합니다.
뭐가dtype
?
소속된 것pandas
또는numpy
아니면 둘 다, 아니면 다른 것?판다 코드를 검사하면 다음과 같습니다.
df = pd.DataFrame({'float': [1.0],
'int': [1],
'datetime': [pd.Timestamp('20180310')],
'string': ['foo']})
print(df)
print(df['float'].dtype,df['int'].dtype,df['datetime'].dtype,df['string'].dtype)
df['string'].dtype
출력은 다음과 같습니다.
float int datetime string
0 1.0 1 2018-03-10 foo
---
float64 int64 datetime64[ns] object
---
dtype('O')
당신은 마지막을 판다로 해석할 수 있습니다.dtype('O')
또는 Pandas 객체는 Python 유형 문자열이며, 이것은 Numpy에 해당합니다.string_
또는unicode_
종류들.
Pandas dtype Python type NumPy type Usage
object str string_, unicode_ Text
돈키호테가 곤경에 처한 것처럼, 팬더는 눔피에 있고 눔피는 당신 시스템의 기본 아키텍처를 이해하고 그것을 위해 수업을 사용합니다.
데이터 유형 개체는 다음의 인스턴스입니다.numpy.dtype
다음을 포함하여 데이터 유형을 보다 정확하게 이해하는 클래스:
- 데이터 유형(정수, float, Python 객체 등)
- 데이터 크기(정수와 같은 바이트 수)
- 데이터의 바이트 순서(리틀 엔디안 또는 빅 엔디안)
- 데이터 유형이 구조화된 경우 다른 데이터 유형의 집합(예: 정수와 부동소수로 구성된 배열 항목 설명)
- 구조물의 "필드" 이름은 무엇입니까?
- 각 필드의 데이터 유형은 무엇입니까?
- 각 필드가 메모리 블록의 어느 부분을 차지하는지 여부
- 데이터 유형이 하위 배열인 경우 모양 및 데이터 유형은 무엇입니까?
이 질문의 맥락에서dtype
팬드와 뚱딴지 둘 다에 속하며, 특히.dtype('O')
우리가 줄을 기대한다는 뜻입니다.
다음은 테스트를 위한 몇 가지 코드입니다.만약 우리가 사전으로 데이터 세트를 가지고 있다면,
import pandas as pd
import numpy as np
from pandas import Timestamp
data={'id': {0: 1, 1: 2, 2: 3, 3: 4, 4: 5}, 'date': {0: Timestamp('2018-12-12 00:00:00'), 1: Timestamp('2018-12-12 00:00:00'), 2: Timestamp('2018-12-12 00:00:00'), 3: Timestamp('2018-12-12 00:00:00'), 4: Timestamp('2018-12-12 00:00:00')}, 'role': {0: 'Support', 1: 'Marketing', 2: 'Business Development', 3: 'Sales', 4: 'Engineering'}, 'num': {0: 123, 1: 234, 2: 345, 3: 456, 4: 567}, 'fnum': {0: 3.14, 1: 2.14, 2: -0.14, 3: 41.3, 4: 3.14}}
df = pd.DataFrame.from_dict(data) #now we have a dataframe
print(df)
print(df.dtypes)
마지막 줄은 데이터 프레임을 검사하고 출력을 기록합니다.
id date role num fnum
0 1 2018-12-12 Support 123 3.14
1 2 2018-12-12 Marketing 234 2.14
2 3 2018-12-12 Business Development 345 -0.14
3 4 2018-12-12 Sales 456 41.30
4 5 2018-12-12 Engineering 567 3.14
id int64
date datetime64[ns]
role object
num int64
fnum float64
dtype: object
모든 종류가 다릅니다.dtypes
df.iloc[1,:] = np.nan
df.iloc[2,:] = None
하지만 우리가 설정하려고 한다면,np.nan
또는None
원래 열 d 유형에는 영향을 주지 않습니다.출력은 다음과 같습니다.
print(df)
print(df.dtypes)
id date role num fnum
0 1.0 2018-12-12 Support 123.0 3.14
1 NaN NaT NaN NaN NaN
2 NaN NaT None NaN NaN
3 4.0 2018-12-12 Sales 456.0 41.30
4 5.0 2018-12-12 Engineering 567.0 3.14
id float64
date datetime64[ns]
role object
num float64
fnum float64
dtype: object
그렇게np.nan
또는None
.dtype
열 을 든모열 행을다로설않한는으로 한np.nan
또는None
은 이경열다과같됩이니다음은우가 .float64
또는object
각각 다음과 같다.
단일 행을 설정할 수도 있습니다.
df.iloc[3,:] = 0 # will convert datetime to object only
df.iloc[4,:] = '' # will convert all columns to object
할 점은 문자열이 열 객체가 .dtype
.
이것은 "파이썬 객체"를 의미합니다. 즉, numpy가 지원하는 기본 스칼라 유형 중 하나가 아닙니다.
np.array([object()]).dtype
=> dtype('O')
'O'는 물체를 나타냅니다.
#Loading a csv file as a dataframe
import pandas as pd
train_df = pd.read_csv('train.csv')
col_name = 'Name of Employee'
#Checking the datatype of column name
train_df[col_name].dtype
#Instead try printing the same thing
print train_df[col_name].dtype
첫 번째 줄은 다음을 반환합니다.dtype('O')
합니다: print 이문있다행반환합니다을음은는.object
언급URL : https://stackoverflow.com/questions/37561991/what-is-dtypeo-in-pandas
'programing' 카테고리의 다른 글
Firestore에서 'reference' 유형의 필드로 쿼리 중 (0) | 2023.06.10 |
---|---|
Android에서 '앱이 설치되지 않음' 오류 (0) | 2023.06.10 |
CSV 파일 데이터를 Postgre로 가져오는 방법SQL 테이블 (0) | 2023.06.10 |
각진 2 - 타사 립 추가 (0) | 2023.06.10 |
여러 개의 제출 버튼 장고 양식을 작성하려면 어떻게 해야 합니까? (0) | 2023.06.10 |