[멋쟁이 사자처럼 AIS7][0101:0104]

HI,HYEN·2022년 9월 22일

[ 0101 ]

Bool

type(True)		# bool
True == 1		# True
False == 0		# True
True == '1'		# False

숫자

type(1)		# int
type(1.5)	# float

사칙연산

2 ** 3		# 8		제곱
3 // 2		# 1		몫
5 % 2		# 3		나머지

문자열 함수

.lower()		# 소문자 변환
.upper()		# 대문자 변환
.strip()		# 양 끝 공백 제거
len()			# 문자열 길이

리스트 함수

.append()		# 리스트 추가
.remove()		# 리스트 제거

딕셔너리 함수

{key:value}
중복 없음
A["abc"]="123"		# 추가
del A["abc"]		# 제거

[ 0102 ]

조건문 - if문 :

     if :
     elif :
     else :
  • 숫자를 입력하면 string으로 입력받고 앞에 int로 정수로 변환
  • PEP20 = import this

반복문 - for문 :

  • 반복 횟수가 정해져 있을 때
  • 문자 = 변수 , “문자” = 문자열

range(시작(이상),끝(미만),증가치) 함수

  • 증가치가 음수면 역순
  • enumerate() 인덱스 번호 출력
    -> for i in range(len(weekday)): =for i, w in enumerate(weekday):

while 문

while True:		# 무한반복(조건이 참인 동안에 반복)

함수

def A(매개변수=전달인자):
.split()	# ()로 나눠서 리스트로 반환
“”” ~ “””	# 독스트링(문서를 의미)

[ 0103 ]

pandas ------------------------

= 행과 열로 되어있는 데이터분석 도구
import pandas as pd as	# 별칭(alias) pd라고 부르겠다

DataFrame

df[“가격”].tolist()	# 리스트 형태로 변경 = list(df[“가격”])
axis 0				# 0 -> 행, 1 -> 열
df = df.drop()		# 다시 df에 할당해줘야 drop 적용
.info()				# 데이터프레임의 정보
.shape				# 데이터프레임의 크기 (행, 열)
.dtypes				# 데이터의 타입만
.describe()			# 데이터프레임의 요약 (기술통계 값)
.describe(include=object)	# 범주형 데이터 기술통계 값

NumPy

= 파이썬에서 사용할 수 있는 공학용 계산기
  • 값을 하나만 넣었지만 모두 적용 -> 브로드캐스팅
%timeit		# 성능 검사(걸리는 시간)
* 2개 이상의 데이터를 가져올땐 대괄호 2개
.loc[,]		# locate 인덱스 값으로 행 데이터 가져오기 (value값)
.iloc[]		# (인덱스 순서대로)
.set_index()	# 특정컬럼 기준으로 index값 지정
.str.contains(“vita”)	# vita가 들어간 값만 찾기
.str.upper()		# 대문자 <-> .str.lower() 소문자
df["약품명_소문자"].str.contains("vita|비타")	
# |는 or (vita,비타 모두 찾기), &는 and
sort_values()	# 값 기준으로 정렬 -> sort_index() 인덱스 기준으로 정렬
na		# not available, applicable
assending=False		 # 역순정렬
.to_csv(“파일명”, index=False)		# "파일명"으로 csv파일로 저장
 									# index=False 인덱스 값은 저장하지 않는다
pd.read_csv(“파일명”)					# 저장된 "파일명".csv 파일 읽어오기

[ 0104 ]

seaborn

import seaborn as sns	# 데이터 시각화 라이브러리
.load_dataset()		# dataset 로드
df.head()		# 위에서 5개(기본값) = df.iloc[:5]
df.tail()		# 아래에서 5개
df.sample()		# 랜덤하게 가져옴
df.sample(frac=0.05, random_state=42)
# frac= 추출할 표본의 비율,
# random_state= 랜덤한값을 고정(환경에 따라서 값을 지정/같은 환경 = 같은 값)
.info()		# 기본정보값 보기
.describe()	# 기술통계값 보기
df.describe(include="object)	# 범주형 데이터의 기술통계값
.shape		# 데이터프레임 크기 결과값-> (행, 열)
.corr()		# 상관계수
df["dataset"].value_counts()	# 빈도수
df["dataset"].value_counts(normalize=True)
# 빈도수의 비율 normalize = True 모두 더하면 1
.groupby()		# 그룹핑 하기
sns.countplot(data=df, x="dataset”)		# 값에 대한 빈도수 그래프로 그리기
sns.barplot(data=df, x="dataset", y=“x”, ci=None)
# 평균값 막대그래프로 그리기 => 검은색 막대 : ci(confidence interval 신뢰구간/ None 추천)
sns.barplot(data=df, x="dataset", y="y", ci=None, estimator=np.sum)
# 합계를 구할 수 있는 방법
sns.boxplot()		# 분포도를 더 잘 볼 수 있음
df.hist(bins=)		# 도수분포표를 시각화해서 그래프로 나타낸것, bin = 통을 몇개로 나눌거냐
sns.displot(data=df, x="y", hue="dataset", kde=True, col="dataset”)
# 통합그래프, hue = 컬러(카테고리/다른색상으로 그리겠다), kde = 비율의 시각화
sns.scatterplot(data=df, x="x", y="y", hue="dataset")
sns.regplot(data=df, x="x", y="y")	# regression을 보여주는 데이터의 선형성 시각화
sns.lmplot(data=df, x="x", y="y", hue="dataset", col="dataset", col_wrap=2)
# regplot()과 FacetGrid를 결합한 plot
profile
Today I Learn

0개의 댓글