[Python] 파이썬 데이터 분석 쌩 기본기 : 데이터 다루기

2024. 12. 24. 23:23·Coding & Data Analysis/Python

기본 코드 ~ 함수

import pandas as pd
df = pd.read_csv('iris.csv')
df.head()

👉 판다스 불러오고, 데이터프레임 받고 위의 일부 데이터 확인

df.index
df.columns

👉 얘네 은근 중요!

인덱스만 따로 뽑고 싶다면 df.index 객체

df.columns : 열 이름 활용해서 쉽게 원하는 데이터 추출 가능

df['sepal.length'].nlargest(3)
df['variety'].unique()
df['variety'].nunique()

👉 활용도 높은 친구들

nlargest : 가장 큰 수치 n개 / unique : 중복 제거한 값 추출 / nunique : 중복 제거한 값의 개수

df[df.columns[2]][4:].head()

👉 [ ] 안에 columns 객체 넣어서 정수로 열 뽑기 + 해당 열의 5번째 행부터 추출 + 앞의 일부 행 표시

df.loc[0:4,df.columns[4]]
df.iloc[0,0]

👉 좌표 관련 함수들

loc : 행은 정수, 열은 열 이름 / iloc : 행과 열 모두 정수 (좌표평면 스타일. 숫자이기에 응용가능성 높음)

filter = (df[df.columns[4]] == 'Setosa') | (df['petal.length'] >= 1.4)
df[filter][['sepal.length','sepal.width']].head()

👉 필터 객체 만들어서 조건에 맞는 데이터 찾기 (필터 적용하고 두개의 열 추출)

and 나 or 활용할 때 괄호로 조건 묶기 주의!

df1 = pd.concat([df[df.columns[4]],df[df.columns[:4]]], axis = 1)
df1.head()

👉 concat : 데이터프레임 열 합치기 ( 행 방향 합치기인 axis = 0 이 기본값. )

df1.rename(columns = {'variety' : 'variety1'}, inplace = True)
df1.head()

👉 열 이름 바꾸기 ( 기존이름 : 새로운 이름 )

def cm_func(x) :
    return str(x) + 'cm'
df1['test'] = df1[df1.columns[1]].apply(lambda x : cm_func(x))
df1.head()

👉 함수 정의 + apply ( 각각의 열에 대해 함수 적용) + lambda ( 각각의 행 데이터 : f(x) )

 

 

 

문자열 관련

filter1 = df['variety'].str.startswith('V')
filter2 = df['variety'].str.contains('V')
df[filter2].head()

👉 특정 조건에 맞는 문자열 찾기

startswith : ~ 로 시작 / contains : ~ 를 포함

vari = ['versicolor','setosa']
filter = df['variety'].str.lower().isin(vari)
df[filter].head()

df['variety'] = df['variety'].str.lower()
df.head()

👉 isin : 변수로 들어간 리스트에 있는 문자열과 일치하는 데이터 추출 / lower : 대문자에서 소문자로

 

 

 

그룹화

df1.groupby('variety').get_group('setosa').head()

👉 그룹화 --> 특정 그룹 추출

gr_var = df1.select_dtypes(include = 'number').groupby(df1['variety'])
gr_var.mean().sort_values('sepal.length', ascending = False)

👉 그룹 객체 형성 ( + 데이터 종류 설정 ) --> 그룹별 평균 --> sepal.length 평균 기준으로 내림차순 정렬

df1.groupby('variety').size()
df1.groupby('variety').count()

👉 size = 결측치 포함 개수 / count = 결측치 제외 개수

test1 = []
for x in range(150):
    if x%2 == 0 : 
        test1.append('A') 
    else :
        test1.append('B')
df1['test1'] = test1

df1.groupby('variety')['test1'].value_counts()
df1.groupby('variety')['test1'].value_counts(normalize = True)
df1.groupby('variety')['test1'].value_counts(normalize = True)['setosa']

👉테스트용 리스트를 구성하고 난 후 데이터프레임의 새로운 열로 추가

👉value_count : 중복을 제외한 개수 표시 ( normalize 옵션 : 비율 제공 )

    ❗2번째 코드 : variety 로 그룹화 --> test1 열 추출 --> test1 열의 ABC 값들의 개수 비율 제공

 

관련 포스팅

파이썬 데이터 분석 쌩 기본기 : matplotlib 시각화 기초 (1)

 

파이썬 데이터 분석 쌩 기본기 : matplotlib 시각화 기초 (1)

1번 예시val_c = df.groupby('fl')['cty'].mean()val_h = df.groupby('fl')['hwy'].mean()plt.figure(figsize = (10,5))plt.plot(df['fl'].unique(), val_c, c = 'red', lw = 1, alpha = 0.5, marker = 'o', ms = 3, mec = 'black', mfc = 'gray', ls = 'dotted', label =

skrrdevlog.tistory.com

 

[파이썬] 미국 경제 데이터셋으로 머신러닝 배우기 <선형회귀>

 

[파이썬] 미국 경제 데이터셋으로 머신러닝 배우기 <선형회귀>

데이터R의 ggplot2 라이브러리의 "economics" 데이터를 활용했습니다. https://ggplot2.tidyverse.org/reference/economics.html US economic time series — economicsThis dataset was produced from US economic time series data available from h

skrrdevlog.tistory.com

 

 

'Coding & Data Analysis > Python' 카테고리의 다른 글

파이썬 데이터 분석 쌩 기본기 : matplotlib 시각화 기초 (2)  (1) 2024.12.26
파이썬 데이터 분석 쌩 기본기 : matplotlib 시각화 기초 (1)  (0) 2024.12.26
[Python] 다중 막대 그래프와 array 오류 해결하기  (5) 2024.09.21
[Python] Apply 함수 : 복수 인자 사용하는 방법  (1) 2024.09.15
[Python] Colab 으로 데이터 분석 시작하기 - 중간 점검  (0) 2024.09.15
'Coding & Data Analysis/Python' 카테고리의 다른 글
  • 파이썬 데이터 분석 쌩 기본기 : matplotlib 시각화 기초 (2)
  • 파이썬 데이터 분석 쌩 기본기 : matplotlib 시각화 기초 (1)
  • [Python] 다중 막대 그래프와 array 오류 해결하기
  • [Python] Apply 함수 : 복수 인자 사용하는 방법
흑석동사는시골쥐
흑석동사는시골쥐
문과 경영학도 숫자 배우기 프로젝트
  • 흑석동사는시골쥐
    NaN
    흑석동사는시골쥐
  • 전체
    오늘
    어제
  • 링크

    • 독서 일지
    • 올리고 싶은 거 올려요
    • 분류 전체보기 (75)
      • Coding & Data Analysis (52)
        • Python (23)
        • R (21)
        • Excel & Data (2)
        • Git & Github (4)
        • Certificate (2)
      • Project (15)
        • 일자리 스크래핑 서비스 (8)
        • 최적의 인스타 피드 (2)
        • 주식 & 비트코인 분석 (5)
      • Economics (1)
        • 경제기사 스크랩 (1)
      • Records & Thoughts (6)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 공지사항

  • 인기 글

  • 태그

    코랩
    Python
    파이썬
    Colab
    adsp공부법
    데이터
    비전공자
    심장병 데이터
    자격증
    데이터수집
    시각화
    ADSP
    git
    엔비디아
    FLASK
    다항회귀
    전처리
    주가분석
    기초
    matplotlib
    동아리
    데이터분석
    지도
    AI반도체
    머신러닝
    개발
    프로그래밍
    웹스크래퍼
    주식
    r
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
흑석동사는시골쥐
[Python] 파이썬 데이터 분석 쌩 기본기 : 데이터 다루기
상단으로

티스토리툴바