빅데이터 분석기사/퇴근 후 딴짓

pandas 1 axis=0, 1, describe(inclue='O'), astype() 유의

유방울 2024. 5. 14. 16:36

시리즈 만들기

데이터프레임 만들기

menu = pd.Series(['아아','아라','바콜'])
menu

 

# 데이터 프레임 만들기 pd.DataFrame({"컬럼명":데이터})
pd.DataFrame({
    'menu' : menu,
    'price' : price
})

 

object형 칼럼 기초통계

Object의 O

describe(include='O')

# 기초 통계 (object)
# O 는 알파벳 대문자
df.describe(include='O')

 

	메뉴
count	7
unique	7
top	아메리카노
freq	1

 

결측값은 Numpy 패키지 사용

# 결측값으로 추가, 원두 컬럼을 만들고 결측값(NaN)으로 대입
# 결측값을 넣을 때는 np 사용함
import numpy as np
df['원두'] = np.nan
df

 

데이터 삭제

행 0

열 1

# 데이터 삭제
# axis=1:열방향(컬럼) / axis=0:행방향
# axis 생략도 가능함
df = df.drop('new', axis=1)
df

 

오류

int, str 이 type은 제공하지 않는다는 것임 

즉, 두 개의 칼럼의 dtype을 확인해야 함

df['할인가'] = (df['가격']) - (df['가격'] * df['할인율'])
 
TypeError: unsupported operand type(s) for -: 'int' and 'str'
 
 

할인율은 지금 float임

데이터가 어떻게 되어 있는지 확인하고 astype으로 int할지 float할지 정해야 함

별 생각없이 int으로 넣어서 계속 오류 떴음

0    0.5
1    0.1
2    0.2
3    0.3
Name: 할인율, dtype: object